特定类别的 Woocommerce 产品小部件

问题描述 投票:0回答:2

如何使 Woocommerce 产品小部件仅显示特定类别的产品?当前选项正在销售、精选等等。

php wordpress woocommerce widget product
2个回答
3
投票

这可以通过挂钩在

woocommerce_products_widget_query_args
过滤器挂钩中的自定义函数来完成。您必须在其中的数组中设置您的产品类别(如果有多个产品类别,则为您的产品类别)。

这是代码:

add_filter( 'woocommerce_products_widget_query_args', function( $query_args ){
    // Set HERE your product category slugs 
    $categories = array( 'music', 'posters' );

    $query_args['tax_query'] = array( array(
        'taxonomy' => 'product_cat',
        'field'    => 'slug',
        'terms'    => $categories,
    ));

    return $query_args;
}, 10, 1 );

代码位于活动子主题(或主题)的 function.php 文件中或任何插件文件中。

在 WooCommerce 3+ 中测试并有效


0
投票

要显示当前类别的产品,可以使用以下方法:

add_filter( 'woocommerce_products_widget_query_args', function( $query_args ){
    $category = get_queried_object();
    $cat_slug = $category->slug;
    $query_args['tax_query'] = array( array(
        'taxonomy' => 'product_cat',
        'field'    => 'slug',
        'terms'    => $cat_slug,
    ));

    return $query_args;
}, 10, 1 );
© www.soinside.com 2019 - 2024. All rights reserved.