WordPress wp_localize_script有什么作用?

时间:2013-09-09 08:19:33

标签: javascript wordpress localization

有人可以解释一下wp_localize_script()做什么吗? 即使我在WP Codex中读过它,我也不明白它的作用。

1 个答案:

答案 0 :(得分:18)

它允许您通过打印JavaScript对象在客户端中使用PHP数据。 From the Codex

  

本地化脚本,但仅在已添加脚本的情况下。的能   也可用于在页面中包含任意Javascript数据。

你这样使用:

// Register script as per Codex instructions.
// It doesn't have to contain anything but the file must exist
wp_register_script('handle', get_template_directory_uri() .'/js/dummy.js');

// Send data to client
wp_localize_script('handle', 'Data', array(
  'url' => home_url(),
));

这将在JavaScript中打印一个对象:

<script type='text/javascript'>
/* <![CDATA[ */
var Data = {"url":"http://..."};
/* ]]> */
</script>

现在,您可以在客户端访问该数据:

console.log(Data.url);

当您构建插件时,它非常有用,因此您可以将客户端与服务器逻辑分开,而不是将JS和PHP全部混合在同一个文件中。