2015-06-24 53 views
0

有一个WordPress/WooCommerce网站,它使用默认的WooCommerce循环显示按价格升序排序的产品。有些产品的价格为零,应在最后显示。结束时显示价格为零的产品

此外还有一个插件,它为零价格消息添加了一个元字段。

有没有办法显示这个元领域的产品最后?或者,对它们进行分类,以便价格没有指定的产品会在其他产品之后显示出来?

现在我试图得到它下面的代码工作:

add_filter('posts_orderby', 'custom_order', 10, 2); 
function custom_order($orderby){ 
    global $wpdb; 
    if(! is_admin() && is_product_category()) : 
     $orderby = "CASE WHEN wp_postmeta.meta_value >= 0 THEN wp_postmeta.meta_value+0 ASC ELSE ''"; 
    endif; 


    return $orderby; 
} 

我不懂SQL,当我使用这个我得到404错误。有没有办法解决它,或更好的解决方案?

回答

0

标准SQL约定要求的话END收出一根CASE声明:

CASE WHEN wp_postmeta.meta_value >= 0 THEN wp_postmeta.meta_value+0 ASC ELSE '' END 
相关问题