Wp_enQueue方法是否有效?

时间:2013-02-03 作者:kaffolder

我有一个关于如何使用Wordpress加载脚本的快速问题。我正在开发一个主题,我知道最好的方法是使用“wp\\u register\\u script/wp\\u register\\u style”方法,然后使用“wp\\u enqueue\\u script/wp\\u enqueue\\u style”将它们排队。最后,将它们添加到操作“wp\\u enqueue\\u scripts”。

我的问题是因为我正在开发一个主题,我有几个javascript文件正在排队。将javascript文件分开并单独排队是一种好的做法,还是应该将所有javascript文件合并到一个文件中,然后只将该文件排队?理想情况下,我希望能够将文件分开以便于将来更新,但如果每次都要将所有这些文件排队,那么在为您的站点提供服务时,Wordpress会变慢吗?Wordpress每次提供页面/帖子时,是否都必须运行这些文件,或者运行一次后是否以某种方式缓存文件?

我想我想了解一下这个动作的工作原理。我只是想尽我所能简化事情。提前感谢大家的支持!

2 个回复
最合适的回答,由SO网友:david.binda 整理而成

我不会对wp\\u enqueue函数本身感到震惊,也不会对PHP的减速感到震惊。但让更多javascript文件排队确实很重要。但不是从PHP的角度来看。每个网站(即使是纯HTML)都会因彼此的请求而变得越来越慢,直到它带来所有文件为止。第一个请求是HTML文件(这就是为什么我们对这个文件使用gzip压缩),下一个请求是CSS和JavaScript文件、图像、flash组件和其他东西。

对于CSS和JavaScript,我们有一个JavaScript和CSS的缩小器,这就是为什么我们在一个请求中使用CSS精灵来处理多个图像。每个请求都是一种减速。

我会推荐你一个项目yslow - 以获得更多见解。

现在回到你的问题上来。合并JavaScript并将其最小化。但保留开发人员版本(mysctipt.dev.js)以备将来开发,并将myscript排队。min.js到您的主题(就像WordPress本身一样)。并随主题一起发货。

还有一件重要的事。如果你想用css绕过wp\\u enqueue\\u script hook,那么一些用于自动缩小脚本和css的插件对于你主题的用户来说并不能像预期的那样工作。使用该功能。

SO网友:s_ha_dum

好吧,如果你想争论效率,那么一个纯硬编码HTML站点的效率与它得到的一样高,但维护是一个问题,重复工作是一个问题,而且你得不到漂亮的动态内容。因此,最终的计算结果并不完全是关于效率的。您还必须考虑维护和功能,以及服务器环境之类的问题。

至于将脚本排队与将其硬编码到<head> 你不会注意到太大的不同。我没有测量它,但我敢打赌你说的是小数点后五到六位的差值——0.0000n左右。这是一个值得付出的代价。

真正的滞后将是服务器和浏览器之间的传输时间,您可以通过手动组合脚本来改善这一点,但随后您会遇到维护问题。WordPress没有(提供一个选项)像在后端那样为前端合并脚本,这让我很恼火,但有一些插件可以做到这一点。

长话短说,注册和/或将脚本排队。总的来说,你表现得更好。

结束

相关推荐

将admin-ajax.php添加到前端。好主意还是坏主意?

我喜欢管理ajax。php。但我讨厌必须本地化才能将前端脚本指向它,我希望有一个等效的、易于查找的主题文件。(看到前端请求通过“/wp-admin/”,我也很烦恼。没有实际原因,只是看起来很难看。)所以我只是复制了管理ajax。php中的根目录“/ajax.php”,调整了包含路径并删除了WP\\u ADMIN常量定义。看起来就像gangbusters(我现在可以将所有前端AJAX请求直接发送到/AJAX.php!并且我仍然可以在插件中使用普通的wp\\uAjax挂钩!)。但这安全吗?可能出现什么问题?由