Ale*_*rdo 3 php ajax wordpress
因为我只能找到复杂的例子,所以我很难学习 AJAX 的基础知识。事实上,我想做一件看似简单的事情,但我找不到任何简单的解决方案。有很多说明如何使用 AJAX 来检查各种表单等。但是关于这项技术如何在 WordPress 中工作的数据很少。
官方说明对我也没用:https : //codex.wordpress.org/AJAX_in_Plugins
我究竟需要什么?
例如,我在functions.php 中有一些函数。让它成为一个简单的字符串:
<?php
function do_echo() {
echo "Hello";
}
Run Code Online (Sandbox Code Playgroud)
现在,我想在我的帖子中创建一个按钮并使用 AJAX 调用 do_echo()。
<button class="my_button" type="button" role="button">Click Me</button>
Run Code Online (Sandbox Code Playgroud)
所以,我想做的第一件事就是按下按钮并得到“你好,世界!” 显示。
当然,实际上,我需要执行更复杂的功能。但是,首先,我需要做这些简单的事情。
我意识到我需要使用 jQuery 做这样的事情
$.ajax({
url: '/path/to/file',
type: 'default GET (Other values: POST)',
dataType: 'default: Intelligent Guess (Other values: xml, json, script,
or html)',
data: {param1: 'value1'},
})
.done(function() {
console.log("success");
})
.fail(function() {
console.log("error");
})
.always(function() {
console.log("complete");
});
Run Code Online (Sandbox Code Playgroud)
我知道我需要在 PHP 中做这样的事情
add_action('wp_ajax_(action)', 'my_action_callback');
add_action('wp_ajax_nopriv_(action)', 'my_action_callback');
Run Code Online (Sandbox Code Playgroud)
但我无法理解将这些东西附加到 WordPress 需要执行哪些确切步骤。
任何人都可以帮助我了解如何在单击按钮时使用 AJAX从WordPress 中的functions.php 调用任何 PHP 函数的简单说明吗?
先感谢您。
好的,让我们为此编写一个简化的示例。
这是functions.php的示例:
add_action('wp_ajax_nopriv_sayhello', 'say_hello_function');
add_action('wp_ajax_sayhello', 'say_hello_function');
function say_hello_function(){
echo 'hello';
exit();
}
Run Code Online (Sandbox Code Playgroud)
这是前端部分:
<button class="my_button" type="button" role="button">Click Me</button>
<script>
jQuery(".my_button").click(function(){
jQuery.get(ajaxurl,{'action': 'sayhello'},
function (msg) { alert(msg);});
});
</script>
Run Code Online (Sandbox Code Playgroud)
更新:
要在您的网站内容中显示返回的数据:
<script>
jQuery(".my_button").click(function(){
jQuery.get(ajaxurl,{'action': 'sayhello'},
function (msg) { jQuery(".result_area").html(msg);});
});
</script>
Run Code Online (Sandbox Code Playgroud)
要使上述代码正常工作,您需要有一个带有“result_area”类的 div。
<div class="result_area"></div>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11759 次 |
| 最近记录: |