我正在尝试在WordPress插件中执行AJAX请求。 该请求是使用自定义短代码在文章中嵌入的首页上启动的。 p>
但是在测试该方法时会出现问题......不会调用AJAX查询挂钩。< / p>
这是我的 这是我的压缩测试脚本 控制台上的输出是: p>
内部 page.php code>脚本调用短代码的方式: p>
add_shortcode('testshortcode ','TestShortCodeFunction');
function TestShortCodeFunction($ attributes)
{
ob_start();
include(__ DIR __。'/ page.php');
返回ob_get_clean();
} \ n code> pre>
page.php code>: p>
&lt;? php
add_action('wp_ajax_test','Test');
add_action('wp_ajax_nopriv_test','Test');
// do_action('wp_ajax_nopriv_test' ); 这会调用Test()
函数Test()
{
echo'Hallo';
die();
}
?&gt;
&lt; script type ='text / javascript' &gt;
jQuery(document).ready(function(){
console.log(“JS query started”);
//以下不调用test()
jQuery。 ajax({
type:“POST”,
url:“http://127.0.0.1/wordpress/wp-admin/admin-ajax.php?action=test",
success:function(data){
console.log(“查询返回:”+数据);
}
});
});
&lt; / script&gt;
code> pre>
JS查询已启动
Query返回:0
code> pre>
Test() code>函数永远不会根据PHP调试器调用。 p>
admin-ajax.php code>是根据 网络监视器(
URL http://127.0.0.1/wordpress/wp-admin/admin-ajax.php?action=test code>)但返回
0 code>。 p>
admin-ajax.php < 根据PHP调试器调用/ code>
do_action('wp_ajax_test') code>。 p>
div>