寻找钩子Wordpress

时间:2015-12-03 05:28:44

标签: wordpress wordpress-plugin hook

我知道有一些WordPress的钩子列表 - > http://adambrown.info/p/wp_hooks/hook

但是,如果我想找到像WC供应商这样的插件的钩子,那么他们的网站上有一个更短的钩子列表。

'do_action'和'apply filter'功能是我们唯一可以修改的吗? 如果给出类似 - >的类https://github.com/wcvendors/wcvendors/blob/master/classes/admin/class-product-meta.php#L10,有什么方法可以修改它吗?

我们是否仅限于do_action挂钩,还是有办法修改其他区域?我们也可以使用WordPress钩子挂钩到WC Vendors插件吗?

1 个答案:

答案 0 :(得分:0)

大多数情况下,您应该尝试使用钩子完成任何任务,但是如果不实际修改实际代码,某些任务是不可能的。但我们都知道修改核心代码并不好,因为更新后所有更改都会消失。因此,您可以扩展它,而不是修改类。您可以覆盖当前功能并添加新功能。扩展类就像在functions.php中使用relavant钩子一样简单,然后在同一个文件中扩展它或从另一个文件中需要它。以下是关于如何向woocommerce航运类添加新送货方式的官方tutorial

有时你甚至不需要所有的钩子,你只需要找到在特定页面上运行的钩子。为此,您可以使用下面的代码列出所有当前的挂钩。

$debug_tags = array();
add_action( 'all', function ( $tag ) {
    global $debug_tags;
    if ( in_array( $tag, $debug_tags ) ) {
        return;
    }
    echo "<pre>" . $tag . "</pre>";
    $debug_tags[] = $tag;
} );

或者您可以使用此插件&#34; simply show hooks&#34;这在开发时非常有用,因为它可以让您了解每个钩子在页面上的触发位置。