在模板页面中使用wp_LOCALIZE_SCRIPT将变量从php传递到js

时间:2017-03-24 作者:jardindeden

我一直在论坛上寻求帮助,但没有什么能解决我的问题。

我实际上是想用bxSlider 使用Wordpress。我的问题是,在创建画廊图像(子主题中的模板页面)的地方,我需要将从上一页动态获取的图像URL传递到js文件,以使用bxslider建议的选项创建画廊图像。(尤其是thumbnail)

为了将变量从php传递到js,我通常在函数中使用wp\\u localize\\u脚本。php或插件,但不是模板页。在这种情况下,我甚至无法将脚本排队。

如何使用动态变量将变量从模板页面传递到javascript文件(我无法通过function.php)

谢谢你的帮助!

1 个回复
最合适的回答,由SO网友:jardindeden 整理而成

我终于解决了!:)

问题是,在wordpress循环之后,我添加了我的函数,以便在页面末尾将脚本本地化并与函数本身排队。因此,我最终在前面添加了函数来获取标题,这次,我可以正常地传递变量。

我已经在中注册了脚本function.php)

Code before (wrong) :

[...Code...]
function pass_var_to_js() {
    global $my_variable;
    wp_localize_script(\'script_name\',\'send_var\', array( $my_variable ) );
    wp_enqueue_script(\'script_name\');
}
add_action(\'wp_enqueue_scripts\', \'pass_var_to_js\');

Code after (right) :

[...Code...]
add_action(\'wp_enqueue_scripts\', \'pass_var_to_js\');
get_header();
[...Code...]
function pass_var_to_js() {
    global $my_variable;
    wp_localize_script(\'script_name\',\'send_var\', array( $my_variable ) );
    wp_enqueue_script(\'script_name\');
}
我希望它能帮助别人!