我正在尝试覆盖Wordpress主题页脚中的输出。给定的部分只有一个sents = text.split('.')
avg_len = sum(len(x.split()) for x in sents) / len(sents)
在我的functions.php中,我添加了:
do_action('action_name')
然而,这会输出我想要替换的内容以及我想要添加的内容。我对主题Wordpress很新,所以我在这里相当迷失。我究竟做错了什么?
答案 0 :(得分:0)
点击add_action
相关代码 -
add_action(string $ tag,callable $ function_to_add,int $ priority = 10,int $ accepted_args = 1)
$ tags (字符串)(必填)操作的名称 $ function_to_add被挂钩。
$ function_to_add (callable)(必填)你的功能名称 希望被称为
$ priority (int)(可选)用于指定其中的顺序 执行与特定动作相关联的功能。降低 数字与早期执行相对应,并且具有相同的功能 优先级按照添加到的顺序执行 行动。默认值:10
$ accepted_args (int)(可选)函数的参数个数 接受。默认值:1
看看下面的帖子希望这会对你有所帮助 -
https://developer.wordpress.org/reference/functions/add_action/
答案 1 :(得分:0)
如果您可以找到要删除的输出的功能,可以使用remove_action()将其删除:
remove_action( $tag, $function_to_remove, $priority );
要找到这个,你必须查看生成它的主题或插件的代码。某处将是add_action()
类似于你的电话。请注意函数名称和优先级,并在插件/主题中使用remove_action()
。
硬解决方案是使用remove_all_actions()删除该操作的所有功能。
之后,您可以像现在一样添加自己的输出。
注意:请注意,不建议在所有操作中使用remove_all_actions()
。例如,操作wp_footer用于在页面末尾加载JavaScript。删除所有功能将使依赖它的插件和主题变得毫无用处。