为什么我的wordpress本地化变量在我的前端js中不可用
我的目标是本地化wordpress nonces,用于从adminpanel向wp REST API发出post请求的授权 问题是,我无法从javascript访问nonce 我已将wp_localize_脚本添加到将我的javasript文件排入队列的操作中:为什么我的wordpress本地化变量在我的前端js中不可用,wordpress,nonce,Wordpress,Nonce,我的目标是本地化wordpress nonces,用于从adminpanel向wp REST API发出post请求的授权 问题是,我无法从javascript访问nonce 我已将wp_localize_脚本添加到将我的javasript文件排入队列的操作中: function my_admin_scripts() { wp_enqueue_script( 'admin-js', get_stylesheet_directory_uri().'/js/script.js', false )
function my_admin_scripts() {
wp_enqueue_script( 'admin-js', get_stylesheet_directory_uri().'/js/script.js', false );
$data = array(
'nonce' => wp_create_nonce('wp_rest')
);
wp_localize_script( 'script', 'wp_api_var', $data );
}
add_action( 'admin_enqueue_scripts', 'my_admin_scripts' );
然后我希望,我可以在script.js文件中调用它:
console.log (wp_api_var.nonces);
但我不能:
Uncaught ReferenceError: wp_api_var is not defined
<anonymous> https://lisbjergbeboerforening.dk/wp-content/themes/twentyseventeen-child/js/script.js?ver=5.5.1:4
未捕获引用错误:未定义wp\u api\u var
https://lisbjergbeboerforening.dk/wp-content/themes/twentyseventeen-child/js/script.js?ver=5.5.1:4
我从错误中了解到我的变量wp_api_var不可用,但为什么
BR Kresten您的本地化脚本应该是:
/*
* wp_localize_script( string $handle, string $object_name, array $l10n )
*
/*
wp_localize_script( 'admin-js', 'wp_api_var', $data );
您的脚本句柄是
'admin-js'
我的脚本名为script而不是admin js,因此它是较新的队列。但我仍然可以使用js代码。