WP入队,同一脚本注册不同句柄时如何防止重复

时间:2015-12-13 作者:Dev Abhi

我读到wp enqueue阻止加载重复的脚本。但是,当相同的脚本(比如bootstrap.js)由2个不同的插件加载,并使用wp-enqueue加载2个不同的句柄时,会发生什么情况呢?

2 个回复
最合适的回答,由SO网友:Mark Kaplun 整理而成

JS/CSS复制本身也不错。它使HTML变得更难处理浏览器在大多数情况下应该缓存第一个请求而不是服务第二个请求(大多数情况===除非它是一个配置非常糟糕的服务器)

复制的真正问题是试图加载同一文件的两个不同版本(比如两个不同版本的jQuery),而这正是API通过为已经作为core的一部分存在的版本提供句柄而帮助解决的问题。

在你的情况下,最好的事情可能是再想想,为什么你甚至需要在插件中使用引导,为什么管理CSS和JS对你来说还不够。

SO网友:Rarst

一般而言:

仅在特定插件中加载所需的功能所有这些都可以很好地使用引导(他们过去在noConflict实现方面有问题,但他们已经解决了这些问题)。

例如,在我的Laps插件中,我从三个部分编译JS文件:

引导程序的工具提示组件WP没有很方便的方法在排队脚本之后立即输出JS,所以将其组合到单个文件中是最可靠的。

// tooltip source here

jQuery.fn.lapstooltip = jQuery.fn.tooltip.noConflict();

jQuery(document).ready(function () {
    jQuery(".laps-timeline .event").lapstooltip({
        container: \'#wpadminbar\',
        placement: \'bottom\',
        html     : true,
        animation: false
    });
});
请参见full source.

相关推荐