我在下面有这个代码,基本上创建了4个链接,允许我对前端的帖子进行排序。
<div class="sort">
Sort projects by:
<a href="http://mydomain.com/find-work/" >Latest Projects</a>
<a href="http://mydomain.com/find-work/?order=asc&orderby=date" >Ending Soon</a>
<a href="http://mydomain.com/find-work/?order=asc&orderby=meta_value_num&meta_key=proj_budget" >Budget Low</a>
<a href="http://mydomain.com/find-work/?order=desc&orderby=meta_value_num&meta_key=proj_budget" >Budget High</a>
</div>
<?php $my_query = new WP_Query( array(
'post_type' => 'project',
'orderby' => get_query_var('orderby'),
'order' => get_query_var('order'),
));
while ( $my_query->have_posts() ) : $my_query->the_post(); ?>
第二个链接,按日期排序工作正常但是按元值排序的两个链接不起作用。我显然在查询中遗漏了一些东西,但是因为我的生活无法解决这个问题。
任何想法??
答案 0 :(得分:5)
元数值有点神奇:
$my_query = new WP_Query( array(
// 'post_type' => 'project',
'meta_key' => 'proj_budget',
'orderby' => 'meta_value_num'
));
所有可能的值都在codex中解释:http://codex.wordpress.org/Class_Reference/WP_Query#Order_.26_Orderby_Parameters
答案 1 :(得分:5)
这很简单:
new WP_Query( array(
//I used meta_value_num below, because it's about a numeric field
//if you don't have a numeric field, just use meta_value
"orderby" => 'meta_value_num',
"meta_key" => 'price',
"order" => 'DESC'
));