使用wp_localize_script()不可用的变量

时间:2016-06-15 08:02:56

标签: jquery wordpress

我试图使用wp_localize_script();函数使wordpress中的JS脚本可以访问两个变量。我按照手抄本注册,本地化和查询我的脚本。

    wp_register_script( 'overview-map-js', '/js/overview-map.js');

    $translation_array = array (
        'latitude' => $location["lat"],
        'longditude' => $location["long"]
    );

    wp_localize_script( 'overview-map-js', 'lat_long_vars', $translation_array );
    wp_enqueue_script( 'maps-cdn', '//maps.googleapis.com/maps/api/js?v=3.exp&sensor=false' );
    wp_enqueue_script( 'overview-map-js' );

但是,脚本中的变量未定义:

jQuery( document ).ready(function($) {

console.log(lat_long_vars.longditude);
console.log('test');

})

变量在PHP中设置。任何人都可以在这里提出问题的建议吗?

1 个答案:

答案 0 :(得分:2)

注册脚本时不能使用相对路径。要解决这个问题:

如果你没有使用儿童主题:

 wp_register_script( 'overview-map-js', get_template_directory_uri() . '/js/overview-map.js');

如果您使用的是儿童主题:

 wp_register_script( 'overview-map-js', get_stylesheet_directory_uri() . '/js/overview-map.js');