在WordPress中加载脚本时出现问题

时间:2014-08-18 19:31:07

标签: wordpress wordpress-plugin

我正在制作我的第一个插件,它正在顺利进行。但是,我无法从我的插件加载我的脚本(CSS和JS)。这是我的代码:

function my_scripts() {
   wp_enqueue_style('my-style', plugins_url( 'my-plugin/my-style.css') );
   wp_enqueue_script( 'my-js', plugins_url( 'my-plugin/my-js.js' ), array('jquery'), '', true );
} add_action( 'wp_enqueue_scripts', 'my_scripts' );

我必须遗漏一些东西......这么简单的代码无法正常工作:(

2 个答案:

答案 0 :(得分:0)

您的代码看起来非常正确,但请查看Plugins URL Page并查看此特定部分:

  

如果你在一个嵌套在你的插件目录的子目录中的文件中使用plugins_url()函数,你应该使用PHP的dirname()函数

基本上,您需要像这样加载:

plugins_url( 'my-plugin/my-js.js' , __FILE__ ),

答案 1 :(得分:0)

嗯,我明白了。我的错误是我使用了错误的钩子!咄!在管理员方面,您使用钩子 admin_enqueue_scripts ,并在正面使用 wp_enqueue_scripts 来挂钩您的函数以将脚本排入WordPress。

以下是从插件导入的简单示例。如果要从主题中排队脚本,则应使用get_template_directory_uri()函数来获取正确的路径。

自定义插件管理员端

function load_my_scripts() {
    wp_enqueue_style('my-style', plugins_url( 'my-style.css', __FILE__ ));
    wp_enqueue_script( 'my-js', plugins_url( 'my-js.js', __FILE__ ), array('jquery'), '', true );    

} add_action( 'admin_enqueue_scripts', 'guide_express_scripts' );

自定义插件正面

function load_my_scripts() {
    wp_enqueue_style('my-style', plugins_url( 'my-style.css', __FILE__ ));
    wp_enqueue_script( 'my-js', plugins_url( 'my-js.js', __FILE__ ), array('jquery'), '', true );    

} add_action( 'wp_enqueue_scripts', 'guide_express_scripts' );