WordPress /wp-inlcludes/functions.php:自定义 functions/code 消失

WordPress /wp-inlcludes/functions.php: Custom functions/code disappears

我在我的 wordpress 代码中添加了两个自定义函数。 其中一个使用add_action(),另一个使用wordpress的add_filter()函数。

部署代码后,两个函数都按预期工作,但一段时间后(我不确定需要多长时间以及导致 wordpress 这样做的原因)代码神奇地从文件中消失了。

我现在在想

感谢您的帮助

您好,您刚才提到您已将代码添加到 /wp-includes/functions.php 文件中。您已经使用了很好的操作和过滤器,但您的代码应该进入活动主题(子主题是最佳实践)functions.php 文件。当有新更新可用时,/wp-admin/ 和 /wp-includes/ 下的文件会自动从 WP 更新(根据您在 WP 设置中所做的设置,您也可以忽略更新)。

因此,必须通过更新删除您的代码。文件被更新覆盖。如果您有备份,请复制这些代码并将其放入活动主题的 functions.php 文件 /wp-content/themes/yourtheme/functions。php 是您可以添加代码的正确文件。

如果您已将代码添加到主题的 functions.php 文件中,请确保您没有更新主题,否则您的工作也可能会丢失,这就是您可以使用子主题的原因。您可以在此处了解如何创建子主题:https://developer.wordpress.org/themes/advanced-topics/child-themes/

Why is this happening?

很可能是因为有人将 WordPress 更新到最新版本。在你要告诉我“但我从来没有按过任何东西”之前!请记住,WordPress 会自动更新。特别是在较新的版本中。

这里很不错article about WordPress automatic updates。它还描述了如何关闭此功能,但我不建议这样做。

What can I do so that this won't happen again?

开发自定义 WordPress 插件,包含您的自定义设置。这里不错 step by step tutorial

您不应该对 wp-includes 和 wp-admin 文件夹进行任何更改,如果您的 wordpress 更新,这些文件夹将自动更新。 所以 如果您想使用挂钩和操作进行任何更改,您可以将代码放入当前主题的 functions.php。,它将按预期工作,并且您的代码不会消失。