未与其余资产一起排队的JavaScript资产

时间:2017-11-16 作者:AnchovyLegend

我正在从事一个项目,该项目使用子主题的函数文件将样式表和单个javascript文件排队。这两个资源很好地排队。然而,当我添加一个新的已编译javascript文件时,它似乎根本不会排在原来的两个脚本之后,好像它完全忽略了我对函数的添加。php文件。知道为什么吗?

    <?php
    add_action( \'wp_enqueue_scripts\', \'theme_enqueue_styles_and_scripts\' );
    function theme_enqueue_styles_and_scripts() {
        wp_enqueue_style( \'fonts\', get_stylesheet_directory_uri() . \'/assets/fonts/icons/style.css\');
        wp_enqueue_script( \'script\', get_stylesheet_directory_uri() . \'/assets/js/main.js\');
       wp_enqueue_script( \'script\', get_stylesheet_directory_uri() . \'/assets/compiled.js\');
    }

1 个回复
最合适的回答,由SO网友:websupporter 整理而成

你的第二个wp_enqueue_script() 包含与第一个相同的句柄(相同的ID)wp_enqueue_script().

句柄是WordPress内部已知的注册脚本的ID。如果再次使用此ID,则不会注册第二个脚本。

一个可行的例子是:

<?php
add_action( \'wp_enqueue_scripts\', \'theme_enqueue_styles_and_scripts\' );
function theme_enqueue_styles_and_scripts() {
    wp_enqueue_style( \'fonts\', get_stylesheet_directory_uri() . \'/assets/fonts/icons/style.css\');
    wp_enqueue_script( \'script\', get_stylesheet_directory_uri() . \'/assets/js/main.js\');
   wp_enqueue_script( \'compiled-script\', get_stylesheet_directory_uri() . \'/assets/compiled.js\');
}

结束

相关推荐

JavaScript is not enqueuing

在过去的两个小时里,我一直在挠头,想弄明白为什么我会这样。js文件没有从我的插件排队。原型。php文件的代码如下: <?php /** * Plugin Name: Prototype Insert * Description: Insert prototype data into database * Version: 1.0.0 * Author: Pierce Burnett * License: GPL2 */