您可以使用remove_action()
函数将函数从操作中取消挂钩,然后add_action()
把它挂在别处。请注意,在删除操作时,必须严格按照添加的操作指定标记(挂钩名称)、函数和优先级。
Edit: Here are some additional details:
您必须查看另一个插件的源代码,以确定如何做到这一点。如果没有关于您所谈论的插件和功能的具体信息,我们无法给出确切的答案,但下面是一个示例:
如果插件像这样钩住函数:
add_action( \'woocommerce_before_my_account\', \'function_to_move\', 10 );
您可以执行以下操作:
function my_move_woo_functions() {
remove_action( \'woocommerce_before_my_account\', \'function_to_move\', 10 );
add_action( \'woocommerce_after_my_account\', \'function_to_move\', 10 );
}
add_action( \'plugins_loaded\', \'my_move_woo_functions\' );
重要的是,您必须在创建钩子之后但运行钩子之前移动动作。