随机化WooCommerce"按类别购物"

时间:2017-12-05 04:12:47

标签: php wordpress random woocommerce hook

我目前正在开发WooCommerce网上商店。我选择了“按类别选择”选项,首页显示前3个类别。

我希望它显示3个随机类别,而不是前三个类别。

我能够在我的function.php(下面的代码)中添加一个自定义函数,以增加列出的类别数量(到10),但我无法按随机顺序显示这些类别。

add_filter('storefront_product_categories_shortcode_args','custom_storefront_category_per_page' );

// Category Products
function custom_storefront_category_per_page( $args ) {
    $args['number'] = 10;
    return $args;
}

我已经厌倦了设置$ args [' orderby'] =" rand&#34 ;;没有运气。我猜这只适用于产品。我应该改变什么功能才能拥有" Shop By Category"首页上的部分列出3个随机类别,而不是AESC或DESC顺序中的3个类别?

1 个答案:

答案 0 :(得分:1)

如果orderby = rand不适用于您的情况,请尝试以下技巧。

- 首先,您需要获取要在页面中显示的产品的随机类别。

- 然后将其传递给短代码。

$categories = get_terms( array(
    'taxonomy' => 'product_cat',
    'hide_empty' => true,
) );

$all_cat = array();

foreach( $categories as $cat ){

$all_cat[] = $cat->name; 

}

$random_cat // get and create random category with comma seperated. and pass it to the shortcode.
 $randomCat = "tshirt, shirt";

echo do_shortcode('[products limit="8" columns="4" category="$randomCat" cat_operator="AND"]'); ?>