0

我想这更像是一个一般的最佳实践问题。

WordPress 建议使用 wp_enqueue_script 包含脚本,它将脚本添加到堆栈中,但堆栈中的所有内容都会加载到每个页面上。

但是,为了尽可能快地保持首次访问的初始页面加载并防止恶意代码破坏其他代码,最好只在需要的页面上包含脚本吗?

我看过很多关于缩小代码的文章,但关于何时/何处加载代码的文章并不多。有人可以推荐这方面的文献吗?

提前谢谢了。

4

1 回答 1

1

您可以有条件地将带有任何(我认为)模板标签的脚本排入队列。我刚刚测试了这个,它就像一个魅力:

// hook to action
add_action( 'wp_enqueue_scripts', 'conditional_script' );
// function to load script on only the front page
function my_conditional_script() {
    if( is_front_page() ) {
        wp_enqueue_script( 'hello', get_template_directory_uri() . '/hello.js' );
    }
}

对你来说,听起来你可能想使用if ( is_page( array( 1, 2, 3 ) ) ) {...

我不知道提供 gzip 和缩小的各种缓存插件(如 W3 Total Cache)将如何处理这个问题,但是,即使它没有帮助,也不在所有页面上加载可能是值得的。

于 2012-04-19T00:12:50.560 回答