如何删除添加到类中的操作

时间:2021-08-05 作者:Morshed Alam Sumon

以下是来自插件的代码:

class Post_Views_Counter_Columns {
     public function __construct() {
        add_action( \'wp\', array( $this, \'admin_bar_maybe_add_style\' ) );
    }
}
我想删除此admin_bar_maybe_add_style 作用我正在我的child theme\'s functions.php

remove_action( \'wp\', array( \'Post_Views_Counter_Columns\', \'admin_bar_maybe_add_style\' ) );
它不起作用了。有什么建议吗?

1 个回复
最合适的回答,由SO网友:Morshed Alam Sumon 整理而成

我一点都不懂,但似乎效果不错。感谢@Buttered\\u Toast提及有用的线程。

add_action("init", function() {
    global $wp_filter;
    foreach($wp_filter["wp"][10] as $id => $filter) {
    if(is_array($filter["function"]) && count($filter["function"]) == 2 &&
        get_class($filter["function"][0]) == "Post_Views_Counter_Columns" &&
        $filter["function"][1] == "admin_bar_maybe_add_style") {
            remove_action("wp", $id);
        }
    }
}, 99);

相关推荐

Adding custom Bulk Actions

我一直在寻找将自定义批量操作添加到类别页面的方法。他们中的大多数人说,不可能用干净的方式来做这件事,因为这件事没有挂钩。大多数解决方案包括在客户端使用JS通过DOM操作添加选项。虽然这是可行的,但它仍然是一个相当丑陋的解决方案。我读过的大多数文章都是2年前的,所以我一直在想,从那时起到现在,这个问题已经添加了一个新的挂钩或解决方案,以便对这个问题有一个更及时的解决方案。