WordPress 用多了插件,真的会越用越慢吗?
有关 WordPress 速度优化经常听到的就是“ WordPress 用的插件越多越慢”的说法,以至明月也经常说。其实严厉意义来说这句话是很片面的,这句话原本的目的是让大家尽量少用插件,以免影响 WordPress 运转性能而已,谁晓得如今被人当成一种要求了,说实话真有点儿矫枉过正了。
那么插件越多是不是速度就越慢呢?
答复这个问题首先要从 WordPress 插件运转原理说起了。简单了解,就是除了 WordPress 中心程序之外,额外添加的任何程序代码都能够被了解为插件。以至包括向 functions.php 中添加的代码,也能够视作为插件的另外一种方式。
插件自身就是向 WordPress 添加额外程序代码,这些代码会随着 WordPress 一同运转。
例如以下代码:
function my_wp_head() {
echo "<!-- 注释:纯粹测试 -->";
}
add_action('wp_head', 'my_wp_head');
将代码添加到 functions.php 中或者做成一个插件方式,都是在一切页面的 head 局部添加一段 HTML 注释代码。
不管是哪种方式添加,对性能和完成的目的都没什么区别。WordPress 每次执行程序的时分都会将这段代码添加并运转。
所以这里能够得出一个结论,只需是需求额外添加程序代码,不管是直接写入 functions.php 函数文件中还是运用插件,对 WordPress 运转的效率影响是一样的。
从 WordPress 插件运转原理来看,无论是代码还是插件对 WordPress 速度的影响简直是没有的,独一有可能产生影响的其实也就是代码或者插件的代码质量了,我们都晓得 WordPress 中心程序提供了很多的内置函数和钩子,它们自身就是 WordPress 的一局部,关于插件开发者而言,要尽量运用这些内置函数与钩子来进行开发,即可俭省代码编写时间又能增长程序执行效率和平安性。
假如插件完整契合 WordPress 官方插件手册中的编码请求,那么执行效率是不俗的。
另外程序功用假如相对简单的话,采用面向过程编程的插件执行效率较高。功用较复杂的插件,普通采用面向对象编程,固然便于维护和扩展,但执行效率较低一些。
但 PHP 代码的运转效率在有了 OPCache 扩展的加持后其实曾经没有多大的差别了,就算有差别也是微乎其微的,这时分我们就要从插件要完成的功用上来判别能否会影响 WordPress 的速度了,WordPress 插件中的程序代码能够分为 3 种:
仅在前端执行的程序代码
仅在后台执行的程序代码
一切中央执行的程序代码
WordPress 会依据插件中所设定的条件加载代码执行,真正影响网站前端速度的只要 1 和 3 两种,很大一部分的功用型插件固然代码看似很多,但在前端加载的代码其实不多,那样的话对网站速度影响不大。
那么 WordPress 插件越多速度越慢这个说法根据是啥呢?
根据就是简直 99%的插件都不会主动明说的数据库读和写,以至能够说但凡会影响 WordPress 速度的插件简直百分百有数据库读写的行为,影响的大小回绝取决于数据库读写的频率上下,这类插件一个最好的判别办法就是启用后就会在数据库里创立至少一个或者多个数据库表,插件随着 WordPress 运转后,数据库的读写也就开端了,这样 WordPress 速度不受影响才怪呢,数据库拥堵了,代码质量再高也是无用功。
什么样的插件对网站速度影响较小
假如以上内容都认真阅读了,可能你已经有了一定的理解。下面我们总结一下,对网站速度影响较小的插件主要特性:
代码轻量化的插件。
前端输出的 CSS 或 JS 经过优化,且有仅在需求的中央加载的判别规则或功用选项。
插件的功用有清单且有控制开关选项,未开启的功用代码不会被执行。
契合 WordPress 编码标准。
PHP 代码质量较高。
不需求数据库操作,没有频繁的数据库读写。
能坚持更新、不断升级的插件。
就明月的经历来看,只要一个插件没有运行数据库,对 WordPress 速度的影响是极端有限的,以至都能够疏忽的。这也是明月判别插件能否劣质的一个很重要的规范,更是我 1G1H 的最廉价云效劳器一次拖着 5 个站点能够用这么多年的缘由之一,并且影响 WordPress 运转速度的历来不是 WordPress 和 PHP,很多时分都是数据库这个瓶颈,毕竟没有几个站点舍得花钱另购独立的云效劳器,都是效劳器自带的数据库拿来就用了,略微不留意就会拥堵也自然是正常的了。