如何用新操作覆盖现有插件操作

时间:2012-01-28 作者:PrivateUser

我正在使用插件。它有这样一个动作。

add_action(\'publish_post\', \'old_action\');
function old_action($pid) {
    "code goes here"
    }
}
我正在为这个插件编写一个模块。所以我需要用新的动作函数覆盖旧的动作函数。

这是我的新功能。

function new_action($pid) {
      "code goes here"
        }
    }
我想用使用挂钩的新的\\u action函数替换旧的\\u action函数。有人能帮我吗?

谢谢

1 个回复
最合适的回答,由SO网友:Tomas Buteler 整理而成

您可以使用remove_action() 函数,如下所示:

remove_action(\'publish_post\', \'old_action\');
add_action(\'publish_post\', \'new_action\');
需要注意的是,如果旧的\\u操作添加了优先级参数,则必须将其添加到remove_action 调用,否则将无法删除它。如果在类中添加了旧的\\u操作,则会产生其他影响。看见here 了解更多信息。

结束

相关推荐

Custom Post Row Actions

我偶然发现this question 在写这个问题的时候。我有一个问题是关于这个问题的。我发现你用的是get_delete_post_link 筛选为我的操作创建一个新的url(或一个类似的函数——在任何情况下,我都会将该函数与布尔值一起使用)。唯一的问题是,I don\'t know how to capture the event now. 考虑到我在谷歌上找不到很多关于行后操作的例子,我将不胜感激-/public function _wp_filter_get_delete_post_link( $