wordpress 如何让这个WP script_loader_tag工作?

hmae6n7t  于 2022-11-22  发布在  WordPress
关注(0)|答案(1)|浏览(159)

我在这里读了大约24篇文章,但不明白为什么这不起作用...
我将两个脚本排入队列,然后使用script_loader_tag将type=“module”添加到每个标记中。脚本被加载,但没有type=“module”出现。
functions.php下面的代码,网站是radhr.org,非常感谢任何帮助...

// Load RoughNotation page title animations

function notation_page_js() {
    if( !is_page('2') ) {
        wp_enqueue_script( 'js-file', get_stylesheet_directory_uri() . '/js/rn-page.js');
    }
}

add_action('wp_enqueue_scripts', 'notation_page_js');

// Load RoughNotation home hero animation

function notation_home_js() {
    if( is_page('2') ) {
        wp_enqueue_script( 'js-file', get_stylesheet_directory_uri() . '/js/rn-home.js');
    }
}

add_action('wp_enqueue_scripts', 'notation_home_js');

// Add module type to RoughNotation script tags

function add_type_attribute($tag, $handle, $src) {
        // if not your script, do nothing and return original $tag
        if ( 'notation_page_js || notation_home_js' === $handle ) {
                // change the script tag by adding type="module" and return it.
                $tag = '<script type="module" src="'. esc_url($src) .'"></script>';
        }
        return $tag;
}

add_filter('script_loader_tag', 'add_type_attribute' , 10, 3);
bt1cpqcv

bt1cpqcv1#

我认为你应该改变

if ('notation_page_js || notation_home_js' === $handle)

if ('js-file' === $handle)

相关问题