【问题标题】:WooCommerce - Hide related products if product has no categoriesWooCommerce - 如果产品没有类别,则隐藏相关产品
【发布时间】:2017-08-22 20:32:58
【问题描述】:

我想知道如果产品没有设置类别,是否有一种方法可以在单个产品页面中隐藏相关产品选项卡。

这是我尝试过的:

global $product; 

// Return the product categories
$categories = $product->get_categories( ', ', ' ' . _n( ' ', '  ', $cat_count, 'woocommerce' ) . ' ', ' ' );

if(empty($categories)){
        remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_related_products', 20 );
    }

这已添加到functions.php,但它不起作用。谁有更好的主意?

【问题讨论】:

    标签: php wordpress woocommerce


    【解决方案1】:

    是的,有可能,试试下面的代码。

    function remove_related_product()
    {
        global $product; 
    
        $product_id = method_exists( $product, 'get_id' ) ? $product->get_id() : $product->id;
        $terms = wp_get_post_terms( $product_id, 'product_cat' );
    
        if(empty($terms))
        {
             remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_related_products', 20 );
        }
    }
    add_action('woocommerce_after_single_product_summary', 'remove_related_product',10);
    

    代码进入活动子主题(或主题)的 function.php 文件中。

    此代码在 WooCommerce 3+ 上经过测试并且有效

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-26
      • 1970-01-01
      相关资源
      最近更新 更多