3

我需要访问我的客户 javascript 文件中的插件目录。我知道我们确实有使用 php 函数检索插件目录路径的函数plugins_url()

但是,我需要在我必须放置一些图像的 js 文件中检索它。

有任何想法吗??

PS:我的 js 文件保存为 javascript 文件,因此我不能在其中使用 php 标签

4

2 回答 2

2

使用<?php echo plugins_url(); ?>您想要在 js 文件中获取 url 的位置。

例如:

var pluginUrl = '<?php echo plugins_url(); ?>' ;
于 2012-09-14T14:40:56.390 回答
2

这实际上很容易......在functions.php中

wp_enqueue_script('main', get_template_directory_uri() . '/js/main.js', array('jquery'), '20151215', true);

$translation_array = array('templateUrl' =>get_stylesheet_directory_uri()); //在wp_enqueue_script之后

wp_localize_script('main', 'jsVars', $translation_array );

然后在js文件中:

var sitepath=jsVars.templateUrl+"/";

编辑:以防万一它不完全理解:创建翻译数组并包含一个键值对然后将该数组作为jsVars(javascript变量)注入到js脚本中所以基本上我们(错误)使用翻译数组将变量注入到JS 与 wp_localize_script 命令。当然,您可以使用 PHP 定义您想要的所有参数,而不是 templateUrl,以将它们的值注入您想要的任何 js 文件中。在这个例子中,我们通过 jsVars 将模板 Url 注入到主 js 脚本中,但它可以是任何变量到任何 js 脚本中

于 2017-03-31T19:42:11.337 回答