我想你误解了这里的抄本。除非且仅当父主题在该条件语句中包装了函数时,否则不能重新声明同一函数
if ( ! function_exists( \'theme_special_nav\' ) ) {
function theme_special_nav() {
// Do something.
}
}
这意味着,您可以复制
theme_special_nav()
without 这个
if
设置子主题的条件,保留相同的名称,并根据需要修改函数。
示例:
function theme_special_nav() {
// Modified content.
}
子主题的功能。首先加载php,然后加载父主题的函数。php。因此,当加载父主题时,它将首先检查子主题中是否已经存在同名函数,如果存在,则忽略/跳过父主题中的函数
如果父主题没有此条件语句包装函数,则有三个其他选择:
如果主题作者提供了过滤器,请使用功能中提供的过滤器。
如果没有提供自定义过滤器,则需要将特定功能复制到子主题,rename 它可以根据需要修改函数,然后查找在模板文件中调用该函数的所有实例,将该模板复制到子主题,并用对新函数的调用替换对旧函数的原始调用
如果函数挂接到动作挂钩或筛选器,则可以将其从特定挂钩中删除,并用修改后的函数替换为其他名称