如何显示产品类别的其他产品(woocommerce)?

时间:2016-01-24 13:13:21

标签: wordpress widget woocommerce sidebar product

需要在单个产品页面边栏上显示产品所属类别中的其他产品。

例如: 产品类别(x,y,z)中包含自行车 点击Bike时,我是@ the product single page。 在右侧边栏中,我想展示X + Y + Z - Bike的所有产品。

我怎样才能达到这个目标?

Current & desired situation

  • 使用Wordpress,WooCommerce,WidgetLogic和Divi模板

1 个答案:

答案 0 :(得分:0)

您可以尝试使用此代码来实现结果: 在sidebar.php

if(is_product()) {
// if you are on single product page
$productObj =get_queried_object();
$categories = get_the_terms($productObj->id,'product_cat');
$cat_list = array();
foreach($categories as $category)
{$cat_list[] = $category->term_id;};

$posts = get_posts(
  array(
    'post_type'     => 'product',
    'numberposts'   => -1,
    'post_status'   => 'publish',
    'fields'        => 'ids',
    'no_found_rows' => true,
    'exclude' => array($productObj->id),
    'tax_query' => array(
      array(
        'taxonomy'  => 'product_cat',
        'terms'     => $cat_list,
        'field'     => 'term_id'
      )
    )
  )
);

 // now you can iterate through the $posts and show the appropriate list.
}