我有一个购买的主题,可以按程序加载如下操作:
function func() {
echo "head content";
}
add_action( \'wp_head\', \'func\', 5 );
遵循remove action codex 我尝试了以下方法:remove_action( \'wp_head\', \'func\', 5 );
这不起作用,所以我认为这是一个优先考虑的问题,所以我调整了更高和更低的都不起作用。然后我尝试将函数包装到另一个函数中,如:function testfunc() {
if (remove_action( \'wp_head\', \'func\', 5 )) {
echo "removed action";
}
}
add_action( \'wp_head\', \'testfunc\', 1000 );
再次玩弄优先权。一直以来remove_action
正在返回true,但未删除该操作。然后我尝试在init
行动成功了。太棒了不幸的是,我不知道为什么。更令人困惑的是需要包装功能。最后,《法典》明确规定:还值得注意的是,您可能需要优先考虑将操作移除到发生的挂钩after the action is added. 在添加操作之前,无法成功删除该操作。
根据this codex entry 二者都init
和get_header
(有效)在wp_head
函数连接到的操作。有人能帮我解开这个谜团吗?
编辑:回答@sumit的问题add_action
通过包含在主主题函数中发生。php(它包括library/core.php)。这个remove_action
在函数中。子主题的php。