我想更改我的woocommerce产品详细信息页面上的相关产品部分,以便它只显示相关的子类别产品(not 仅具有共同父类别的产品)。例如:
如果用户正在访问分类在“父类别->子1类别”下的产品详细信息页面,则用户查看的所有产品都是“子1类别”产品。
我正在尝试修改woocommerce/single-product/related.php
使用以下php脚本在我的主题文件夹中创建文件以完成此行为:
$product_cat_slugs = array();
foreach (get_the_terms($product->ID, \'product_cat\') as $term) {
if($term->slug !== \'skip-this-cat\') {
array_push($product_cat_slugs, $term->slug);
}
}
$args = array(
\'post_type\' => \'product\',
\'ignore_sticky_posts\' => 1,
\'no_found_rows\' => 1,
\'posts_per_page\' => 4,
\'orderby\' => \'rand\',
\'post__not_in\' => array( $product->id ),
\'tax_query\' => array(
array(
\'taxonomy\' => \'product_cat\',
\'field\' => \'slug\',
\'terms\' => $product_cat_slugs
)
)
);
$products = new WP_Query( $args );
分类是正确的,但我的问题是我没有得到一组随机的帖子。每次装载我只收到相同的帖子。