Related products bölümünde sadece aynı kategori göstermek istiyorum - R10.net
  • 17-09-2020, 01:42:08
    #1
    Merhabalar,

    Woocomerce alt yapısını kullandığımız sitede ürünlerin altında gözüken related products bölümünde alakasız ürünler çıkıyor. Bu bölümde aynı kategoriden olan ürünleri göstermek istiyoruz. Sadece aynı kategorideki ürünleri göstermesi için ne yapabiliriz?
  • 19-09-2020, 02:11:45
    #2
    hocam, mutlaka yedek alarak şunu deneyebilir misiniz?


    add_filter('woocommerce_related_products', 'related_products_from_same_cat');
    function related_products_from_same_cat($args)
    {
        global $post;
    
        $terms = get_the_terms($post->ID, 'product_cat');
    
        $categories = get_the_terms( get_the_ID(), 'product_cat' );
        $cats = [];
    
        $post_ids = get_posts(array(
            'post_type' => 'product',
            'numberposts' => -1, // get all posts.
            'tax_query' => array(
                array(
                    'taxonomy' => 'product_cat',
                    'field' => 'term_id',
                    'terms' => $cats,
                ),
                // görüntülenen ürünü gösterme
                array(
                    'taxonomy' => 'product_cat',
                    'field' => 'term_id',
                    'terms' => $post->ID,
                    'operator' => 'NOT IN',
                ),
            ),
            'fields' => 'ids',
        ));
    
        $args['post__in'] = $post_ids;
    
        return $args;
    }