这是我的代码:
wp_enqueue_script(\'ms_ajax_localized\');
wp_localize_script( \'ms_ajax_localized\', \'MS_Ajax\', array(
\'ajaxurl\' => admin_url( \'admin-ajax.php\' ),
\'nextNonce\' => wp_create_nonce( \'myajax-next-nonce\' ))
);
我把它放进我的
functions.php
我的头撞在墙上。我以前使用过wp\\u localize\\u脚本,但这次我对错误一无所知。
当我加载页面时,我在任何地方的源代码中都找不到脚本标记。。。
最合适的回答,由SO网友:s_ha_dum 整理而成
我对代码进行了如下测试:
wp_enqueue_script(\'jquery\');
wp_localize_script( \'jquery\', \'MS_Ajax\', array(
\'ajaxurl\' => admin_url( \'admin-ajax.php\' ),
\'nextNonce\' => wp_create_nonce( \'myajax-next-nonce\' ))
);
它工作正常,但
Notice
. 它应该连接到
wp_enqueue_scripts
例如:
function my_enqueue_scripts() {
wp_enqueue_script(\'jquery\');
wp_localize_script( \'jquery\', \'MS_Ajax\', array(
\'ajaxurl\' => admin_url( \'admin-ajax.php\' ),
\'nextNonce\' => wp_create_nonce( \'myajax-next-nonce\' ))
);
}
add_action(\'wp_enqueue_scripts\',\'my_enqueue_scripts\');
您必须正确注册脚本并将其排入队列
before you use wp_localize_script
. 自我测试代码以来,使用提供的核心
jquery
工作,我不得不假设这就是问题所在。你的
script registration, 我根本看不到,或者
script enqueueing 情况越来越糟
wp_localize_script
脚本不工作。