Jquery WP AJAX,AJAX\u url常量未定义错误
尽管我复制并粘贴了WP_localize_脚本的WP文档示例,因此我可以在其中使用常量ajax_url, $.ajax函数作为参数,我一直收到“ajax\u url未定义”错误。以下是functions.php中的代码:Jquery WP AJAX,AJAX\u url常量未定义错误,jquery,ajax,wordpress,Jquery,Ajax,Wordpress,尽管我复制并粘贴了WP_localize_脚本的WP文档示例,因此我可以在其中使用常量ajax_url, $.ajax函数作为参数,我一直收到“ajax\u url未定义”错误。以下是functions.php中的代码: add_action( 'admin_enqueue_scripts', 'my_enqueue' ); function my_enqueue($hook) { if( 'index.php' != $hook ) { // Only applies
add_action( 'admin_enqueue_scripts', 'my_enqueue' );
function my_enqueue($hook) {
if( 'index.php' != $hook ) {
// Only applies to dashboard panel
return;
}
wp_enqueue_script( 'ajax-script', plugins_url( '/js/myScript.js', __FILE__ ), array('jquery') );
// in JavaScript, object properties are accessed as ajax_object.ajax_url, ajax_object.we_value
wp_localize_script( 'ajax-script', 'ajax_object',
array( 'ajax_url' => admin_url( 'admin-ajax.php' ), 'we_value' => 1234 ) );
}
为什么?值得指出的是,在您的示例中,只有通过“管理”面板访问脚本时,才会对其进行本地化。如果您想从站点前端访问ajax功能,则需要将第一行更改为:
add_action( 'wp_enqueue_scripts', 'my_enqueue' );
然后还必须删除函数中的第一个“if”语句
如果没有看到您试图调用ajax函数的代码,很难说这是一个解决方案,但这是我根据您向我们展示的内容做出的最佳猜测 没有,还没有解决。你想看更多的代码吗?如果是的话,在其他哪些文件中?我已经解决了这个问题。操作钩子没有出现,因为内部缺少wp_head()命令