2017-02-21 29 views
1

例如列表,我有5个类别中Woocommerce像排序的类别通过计数项

A(3)(3为A类的项目)

B(7)

C(22)

d(1)

E(0)

它们显示在类别页面中,并按id之类的内容排序。

而且我要重新排列的结果是在类别列表页面显示较低的那种从更高,像

C(22)

B(7)

A(3 )

d(1)

E(0)

是否有任何解决方案使用钩子pre_get_posts(或其他挂钩)来解决此问题?

我试图测试钩woocommerce_before_subcategory,它只是表明我每次一个类别,我无法修改其中的任何一个。

回答

1

是有可能的,请参阅wp_list_category

<?php wp_list_category('orderby=count'); ?> 
+0

谢谢,但是'wp_list_categories'不会改变categroy页面的结果。 – Jana

1

在Woocommerce测试代码后,我发现woocommerce_product_subcategories_args挂钩的解决方案。

add_filter('woocommerce_product_subcategories_args', 'ProductSubcategoryArguments', 999, 1); 

function ProductSubcategoryArguments($arg=array()){ 
    $arg['order']='DESC'; 
    $arg['orderby']='count'; 
    return $arg; 
}