2016-03-03 226 views
1

我正在使用wordpress和woocommerce。我一直在努力寻找最后的日子,这是一种按产品类别分类产品的方法。例如“汽车”类别的产品必须按价格ASC进行分类。我有大约10个不同的分类排序。我认为下面的代码可以解决我的问题,但它是有用的。我尝试了多种方式,但找不到合适的方法。我的PHP知识非常有限,但每天都在学习。我应该用案例吗?我怎么做到这一点?或者,也许这只是另一种写作方式?我希望有人能帮助我。提前致谢。Wordpress Woocommerce根据类别分类产品

巴斯

add_filter('woocommerce_get_catalog_ordering_args','tk_woocommerce_catalog_orderbyb'); 
function tk_woocommerce_catalog_orderbyb($args) { 
    $cat = get_the_terms($product->ID, 'product_cat'); 
    foreach ($cat as $categoria) { 
     if($categoria->parent == 0) { 
     $main_parent = $categoria->name; 
     } 
    } 
    if($main_parent == 'Cars') { 
     $args['orderby'] = 'meta_value_num'; 
     $args['order'] = 'ASC'; 
     $args['meta_key'] = '_price'; 
    } 
    return $args; 
} 

回答

0

我知道这是不是一个非常干净的解决方案,但它的工作原理。如果有'else if'陈述(或有案例),我可以对每个产品类别使用不同的分类。

add_filter('woocommerce_get_catalog_ordering_args', 'tk_woocommerce_catalog_orderbyb'); 
function tk_woocommerce_catalog_orderbyb($args) { 
$urlb = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']; 
if (strpos($urlb,'cars')) { 
    $args['orderby'] = 'meta_value_num'; 
    $args['order'] = 'ASC'; 
    $args['meta_key'] = '_price'; 
    } 
return $args; 
} 
相关问题