从Woocommerce钩子中删除功能

Chr*_*ink 2 php wordpress woocommerce

这可能会为我打开一扇门,因为有一些我不知道的东西,所以请WooCommerce 101;

WooCommerce模板archive-product.php的一部分包含代码;

    <?php
            /**
             * woocommerce_before_shop_loop hook.
             *
             * @hooked woocommerce_result_count - 20
             * @hooked woocommerce_catalog_ordering - 30
             */
            do_action( 'woocommerce_before_shop_loop' );
        ?>
Run Code Online (Sandbox Code Playgroud)

从这一点,并阅读文档,它意味着这;

remove_action( 'woocommerce_before_shop_loop', 'woocommerce_result_count', 20 );
Run Code Online (Sandbox Code Playgroud)

应从返回的产品类别中删除结果计数.只有它没有.

怎么了?

hel*_*ing 6

我打算说你应该阅读文档,但它会留下一个重要的部分.

remove_action()不能直接调用,必须将其自身添加到动作钩子中.动作挂钩需要在删除操作之前进行.在这种情况下,我只会使用相同的钩子,但更早的优先级(默认值是10,我用过1)

function so_38878702_remove_hook(){
   remove_action( 'woocommerce_before_shop_loop', 'woocommerce_result_count', 20 );
}
add_action( 'woocommerce_before_shop_loop', 'so_38878702_remove_hook', 1 );
Run Code Online (Sandbox Code Playgroud)


Swa*_*ali 5

remove result countWoocommerce 采取行动-

add_action('woocommerce_before_shop_loop', 'remove_result_count' );
    function remove_result_count()
    {
         remove_action( 'woocommerce_before_shop_loop', 'woocommerce_result_count', 20);
      
    }
Run Code Online (Sandbox Code Playgroud)

在您的function.php文件中使用此代码。

重要提示:要删除挂钩,添加挂钩时的 $function_to_remove 和 $priority 参数必须匹配。这适用于过滤器和操作。删除失败时不会发出任何警告。

http://codex.wordpress.org/Function_Reference/remove_action

在这里您可以获得 WooCommerce Action 和 Filter Hook -

https://docs.woothemes.com/wc-apidocs/hook-docs.html