如何对多个wordpress自定义字段值进行排序?
问题:如何对多个wordpress自定义字段值进行排序? 显示按“价格”自定义字段排序的“产品”类型的帖子: $query = new WP_Query( array ( 'post_type' => 'product', 'orderby' => 'meta_value', 'meta_key' => 'price' ) ); 如果还想按“尺寸”订购,我应该使用哪个代码? 另一个示例,我需要对自
·
问题:如何对多个wordpress自定义字段值进行排序?
显示按“价格”自定义字段排序的“产品”类型的帖子:
$query = new WP_Query(
array ( 'post_type' => 'product',
'orderby' => 'meta_value',
'meta_key' => 'price' )
);
如果还想按“尺寸”订购,我应该使用哪个代码?
另一个示例,我需要对自定义字段进行多种排序:
显示具有“事件”类型的帖子,按“开始_小时”排序,然后按“开始_分钟”排序。
解答
感谢Bainternet我找到了解决方案:
function orderbyreplace($orderby) {
return str_replace('menu_order', 'mt1.meta_value, mt2.meta_value', $orderby);
}
和...
$args = array(
'post_type'=>'Events',
'orderby' => 'menu_order',
'order' => 'ASC',
'meta_query' => array(
array(
'key' => 'Start_Hour',
'value' => '',
'compare' => 'LIKE'
),
array(
'key' => 'Start_Minute',
'value' => '',
'compare' => 'LIKE'
)
)
);
add_filter('posts_orderby','orderbyreplace');
$loop = new WP_Query( $args );
remove_filter('posts_orderby','orderbyreplace');
更多推荐
已为社区贡献2428条内容
所有评论(0)