问题描述

有没有一些全球性的 functions.php 文件,适用于任何主题?

问题在这里:

当我在任何主题中更改 functions.php 文件时,我需要注意两个更改:首先,我需要处理该主题的更新。第二,我需要照顾更改网站的主题。

所以,而不是在主题的 functions.php 中进行更改,是否可以在一些独立于任何主题的 functions.php 文件中进行更改?

最佳解决方案

主题与 non-theme 代码之间的区别是组织而不是技术。任何有效的代码有助于生成环境,无论从哪里加载。

有多个地方加载了代码,这些地方不是 WordPress 核心的一部分:

  • wp-config.php 配置文件

  • 活跃主题 (及其父母为儿童主题)

  • 活动插件

  • 必须使用插件

  • drop-ins(这些有些先进,服务于非常具体的用途)

您自己的代码的典型地方,不应该是主题的一部分,是创建一个插件。其他方法没有通用案例的好处,但是没有通过管理区域的界面 (通过管理区域管理) 和技术 (激活/停用/卸载事件) 普通插件的便利。

次佳解决方案

那么这是一个真正的问题,许多人在改变主题的时候面对它,但是有一个简单的解决方案。

将该功能添加到不是 functions.php 的新页面,并为其提供一个唯一的名称,例如 yousitename + timestamp 或任何您想要的,但唯一的同名的创建文件夹将其压缩并将其上传为插件,因此它将一直工作,直到禁用它。

要了解哪个插件是什么不要错过给这个插件的名称,如:

/*
Plugin Name: XYZ
*/

第三种解决方案

作为 @MBTheDeveloper 答案的补充。

其他选择将是:

  1. 为当前主题创建一个子主题,并使用这个主题的 functions.php 文件 (这是”best practice”) 。

  2. 在您的主题功能 php 文件中使用 include,并加载包含您的自定义代码的 custom-function.php 文件。

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。