📜  wordpress 在 javascript 中获取插件 url(1)

📅  最后修改于: 2023-12-03 15:06:01.052000             🧑  作者: Mango

在 JavaScript 中获取 WordPress 插件 URL

若想在 WordPress 插件中包含 JavaScript 脚本并获取插件本身的 URL,可以采用以下方法。

1. 使用 wp_enqueue_script() 函数加载脚本

可以使用 WordPress 提供的 wp_enqueue_script() 函数加载 JavaScript 脚本文件,并传入插件 URL 作为参数。示例代码如下:

function my_enqueue_scripts() {
    wp_enqueue_script( 'my-script', plugins_url( '/js/my-script.js', __FILE__ ) );
}
add_action( 'wp_enqueue_scripts', 'my_enqueue_scripts' );

其中 plugins_url() 函数会根据当前插件的目录路径自动生成 URL 地址,FILE 表示当前 PHP 文件路径。

my-script.js 脚本文件中就可以通过以下语句获取插件 URL:

var pluginURL = '<?php echo plugins_url(); ?>';
2. 使用 wp_localize_script() 函数传递数据

另一种常见的获取插件 URL 的方法是使用 wp_localize_script() 函数传递数据。此方法能够让后端代码和前端 JavaScript 代码之间相互传递数据,并以 JavaScript 对象的形式在前端可见。

示例代码如下:

function my_enqueue_scripts() {
    wp_enqueue_script( 'my-script', plugins_url( '/js/my-script.js', __FILE__ ) );
    wp_localize_script( 'my-script', 'myScriptObj', array( 'pluginURL' => plugins_url() ) );
}
add_action( 'wp_enqueue_scripts', 'my_enqueue_scripts' );

my-script.js 脚本文件中可以如下使用 myScriptObj 对象获取插件 URL:

var pluginURL = myScriptObj.pluginURL;
结语

上述两种方法均可以获取插件 URL 地址,可以根据具体需求选择使用。值得注意的是,在使用 wp_enqueue_script()wp_localize_script() 函数时,应避免在插件运行过程中重复加载 JavaScript 脚本。