首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >是否可以禁用父主题的功能?

是否可以禁用父主题的功能?
EN

WordPress Development用户
提问于 2013-04-14 08:53:32
回答 1查看 10.9K关注 0票数 4

我想知道是否有可能完全禁用父主题的functions.php中调用的函数,如果可以,如何禁用?(当然,不删除函数。),而是向子主题的functions.php添加一些内容。)

EN

回答 1

WordPress Development用户

回答已采纳

发布于 2013-04-14 13:58:05

只有在某些情况下。

  1. 如果父主题的函数被包装在function_exists条件中,那么您应该能够替换它们。例如: // Parent (!function_exists('p_wpse_95799')) { function p_wpse_95799() { // }如果子主题定义了一个名为p_wpse_95799的函数,那么父函数将不会被使用。如果这是可能的话,您只需要定义一个什么都不做的函数,就像上面的那样。
  2. 如果函数是“钩”到某个过滤器或操作,那么您可能可以取消挂钩它。有个陷阱。子主题functions.php首先加载,这意味着您可能无法直接访问移除过滤器。在父程序的functions.php运行之后,您必须将它们挂起以运行。否则,您将尝试删除一些尚未添加的内容。从Codex:“还值得注意的是,您可能需要将筛选器移除到添加筛选器后出现的钩子上.在添加过滤器之前,不能成功地删除筛选器。“来看,这主要意味着找到一个在父functions.php之后运行的钩子,并连接到它,可能会操纵添加_动作添加_过滤器的第三个参数,导致函数运行得很晚。

这些都是我现在能想到的案子。也许我忘了一个案子。我相信有人会指出,如果我有:)

没有PHP级别的“移除函数”,如果您试图定义两个名称相同的函数,您将得到一个错误。

由于我看不到要删除的函数的代码,我担心如果可能的话,您将通过删除或修改它来破坏某些内容。要小心一点。

票数 8
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/95799

复制
相关文章

相似问题

领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文