在主题函数.php中编写代码比使用插件更快?

时间:2011-12-13 作者:Jens Törnell

我读过很多文章,说我们不应该保留我们不使用的插件。即使它们被禁用,也会使用内存。

functions.php instead of 10 plugins?

如果我有10个小插件,每个插件都有一点功能呢。如果将函数移动到主题函数,是否可以提高速度。php?如果是/否,为什么?

5 个回复
最合适的回答,由SO网友:krembo99 整理而成

我同意Rarst的观点,在优化“待办事项”列表中,这是低优先级的。

……然而,据我所知,这一声明:

这是神话和谬误

并不总是正确的。禁用的插件确实以非直接方式使用内存。有时,根据插件的质量和数量,也会有很多插件。

原因在于两个基本事实。

1-插件将数据写入wp选项表。

基本上,有两种类型的相关数据:

core data (由wp自己编写,例如。option_name = \'active_plugins\';)

"user" 数据(缺少更好的名称)-这是插件本身编写的数据,这让我想到了第二个原因:

2-许多插件作者没有优化他们的插件,尤其是在卸载过程中。这会导致wp\\U选项表中填充不必要的信息。有时很多。许多用户认为,如果他们“停用”一个插件,一切都会恢复正常。

……但事实并非如此。

除非插件作者包含一个卸载过程来清理所有垃圾数据。

..但他们很少这样做(我自己一直坚持要包括这个选项)。

如果您想亲自验证这一点,请访问。

http://yoursite/wp-admin/options.php

您将看到来自停用插件的数据。

现在,我们都知道,更大的DB的内存更重,更大的wp\\U选项表WILL 每次运行查询时处理内存时,都会增加内存。对于其他“更重”的插件来说,情况更糟,它们实际上编写新表而不清理它们。

所有这些都是在理论层面上,并且像前面所说的那样,取决于插件的质量和数量。

顺便说一句,人们通常不知道的另一件事是,主题也有同样的作用。您可以转到上面所述的选项页面,在同一个表中还可以看到禁用的主题。还在那里。(搜索主题\\u mods\\u主题名)

BTW2-滥用“自定义字段”也是如此。。。

回答您的问题-函数。如果您知道自己在做什么,php会更好。否则,这是平均站点的边际差异。我自己做所有关于函数的事情。php。

SO网友:Geert

Code maintainability should at least be equally important as optimization. 如果功能应该放在插件中,则不应将其移动到主题文件夹中。

此外,我猜仅仅将插件文件移动到主题文件夹所得到的优化是徒劳的。这样做不会改变任何实际的插件代码。

如果您真的需要优化代码,那么必须有其他更好的方法。

SO网友:Daniel

这取决于你所说的“比使用插件更快”是什么意思。

WordPress在主题功能之前加载插件。php页面。顺序是:

WP URL->WP配置->核心功能->插件->插件->翻译->主题->页面内容。

插件最重要的是代码质量。如果你的插件编码正确,你不必担心你有多少插件。

以下链接是一个很好的信息来源,特别是评论:-)

http://wpcandy.com/teaches/how-to-create-a-functionality-plugin

SO网友:Rarst

即使它们被禁用,也会使用内存。

这是神话和谬误。禁用的插件不会加载到PHP中,并且不会使用任何东西(除了磁盘空间:)

如果将函数移动到主题函数,是否可以提高速度。php?如果是/否,为什么?

在WP不需要查找和包含插件文件的情况下,速度会更快。然而,在实际层面上,这可能不会是有意义和显著的改善。

基本上,对于优化来说,这是一件优先级很低的事情。

SO网友:brant

我不能说它是否会更快,但如果你计划在函数中添加东西。如果您希望在将来禁用php,那么插件可能是一个更好的主意。禁用插件比从函数中删除代码要快得多。php并推送新的更新。

结束