【发布时间】:2013-01-12 19:51:37
【问题描述】:
我必须在主题中添加一些 php 函数,以便可以从不同的页面使用它们。文档说在 function.php 中添加自定义 php 函数的一个地方
酷!
我的问题是,当我更新主题时会发生什么?包含我的更改的 functions.php 是否会被新的覆盖 - 从而抹去我所有的辛勤工作?
我的直觉说是的,但在我去创建一个儿童主题之前,我想我会要求确定。
谢谢
标记
【问题讨论】:
标签: wordpress
我必须在主题中添加一些 php 函数,以便可以从不同的页面使用它们。文档说在 function.php 中添加自定义 php 函数的一个地方
酷!
我的问题是,当我更新主题时会发生什么?包含我的更改的 functions.php 是否会被新的覆盖 - 从而抹去我所有的辛勤工作?
我的直觉说是的,但在我去创建一个儿童主题之前,我想我会要求确定。
谢谢
标记
【问题讨论】:
标签: wordpress
我只是加了 2 美分,因为这是我在搜索相同问题时出现的第一个 Google 结果。是的,您的 functions.php 将被主题更新覆盖。
我通过下载code-sn-p插件解决了这个问题。
https://wordpress.org/plugins/code-snippets/
现在我可以轻松添加和管理不会被覆盖的函数。
【讨论】:
我不确定当主题更新时是所有文件被覆盖,还是只覆盖更改的文件,但您的更改肯定会在将来的某个时候丢失。
来自Using the Theme Editor and Plugin Editor:
请注意,如果您编辑的主题已更新,您的更改将被覆盖。为了更好地组织您的更改并保护它们免受更新,请考虑创建一个子主题来保存您的所有更改。
【讨论】:
wp-content/upgrade 内创建一个文件夹,删除原始文件并将新文件移动到位。如果主题最终在/wp-content/whatever 中创建了文件夹,这些将保持不变。
假设您正在谈论-仅-修改functions.php,编写插件可能是更好的选择。创建插件基本上涉及编写几行文本来创建标题,其中包括插件名称等。然后添加您的代码,然后......就是这样。插件是高度可移植的,您可以在其他网站上使用它们。此外,如果您切换主题,您的代码不会消失。
(我不是反儿童主题,只是提出一个替代方案。)
【讨论】:
functions.php 在主题更新期间是否被覆盖。