【问题标题】:Woocommerce hook in 'woocommerce_product_subcategories_hide_empty' set to false'woocommerce_product_subcategories_hide_empty' 中的 Woocommerce 挂钩设置为 false
【发布时间】:2015-03-18 01:24:38
【问题描述】:

我正在尝试加入“woocommerce_product_subcategories_hide_empty”https://github.com/woothemes/woocommerce/blob/2.2/includes/wc-template-functions.php#L1467 并将其设置为 false 以显示空类别,但如果我将其添加到我的函数文件中:

apply_filters( 'woocommerce_product_subcategories_hide_empty', false ) ; 

页面中什么都没有出现,只是空白(没有标题)。

这样做的正确方法是什么?

我知道我可以在 wc-template-functions 中删除这些行

if ( ! apply_filters( 'woocommerce_product_subcategories_hide_empty', false ) ) {
        $product_categories = wp_list_filter( $product_categories, array( 'count' => 0 ), 'NOT' );
}

它会解决问题并显示空类别,但我想用钩子来做,而不是编辑 woo 核心文件。

谢谢。

【问题讨论】:

    标签: php wordpress woocommerce hook


    【解决方案1】:

    你应该使用

    add_filter( 'woocommerce_product_subcategories_hide_empty', 'so_28060317', 10, 1 );
    function so_28060317 ( $show_empty ) {
        $show_empty  =  true;
    
        return $show_empty;
    }
    

    apply_filters 是您在创建可扩展主题或插件时使用的。

    add_filter 是您在扩展具有相应 apply_filters 调用的主题或插件时使用的。

    您要使用的过滤器位于第 1467 行的 includes/wc-template-functions.php 中(截至 WooCommerce 2.2.10)

    我写了一个完整的指南here

    【讨论】:

      【解决方案2】:

      您可以在主题或插件功能中将其实现为单行:

      add_filter("woocommerce_product_subcategories_hide_empty", "__return_true");
      

      https://codex.wordpress.org/Function_Reference/_return_true

      【讨论】:

        【解决方案3】:

        Lee Powers 的答案是正确的,只是你需要返回 false,如果你想显示空类别,则不是 true。

        add_filter('woocommerce_product_subcategories_hide_empty', '__return_false');
        

        抱歉单独回答,我尝试通过评论回答但没有足够的声誉。

        【讨论】:

          猜你喜欢
          • 2018-06-05
          • 1970-01-01
          • 2021-04-28
          • 2020-08-17
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多