使用元值订购 Wordpress 帖子 [英] Ordering Wordpress posts with meta values

查看:32
本文介绍了使用元值订购 Wordpress 帖子的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在下面有这段代码,它基本上创建了 4 个链接,让我可以在前端对帖子进行排序.

 

按以下方式对项目进行排序:<a href="http://mydomain.com/find-work/" >最新项目</a><a href="http://mydomain.com/find-work/?order=asc&orderby=date" >即将结束</a><a href="http://mydomain.com/find-work/?order=asc&orderby=meta_value_num&meta_key=proj_budget" >预算低</a><a href="http://mydomain.com/find-work/?order=desc&orderby=meta_value_num&meta_key=proj_budget" >预算高</a>

<?php $my_query = new WP_Query( 数组('post_type' =>'项目','orderby' =>get_query_var('orderby'),'订单' =>get_query_var('order'),));while ( $my_query->have_posts() ) : $my_query->the_post();?>

按日期排序的第二个链接工作正常,但按元值排序的两个链接不起作用.我的查询中显然遗漏了一些内容,但我终生无法解决.

有什么想法吗??

解决方案

很简单:

new WP_Query( 数组(//我在下面使用了meta_value_num,因为它是关于一个数字字段//如果你没有数字字段,只需使用meta_valueorderby" =>'meta_value_num',元密钥" =>'价钱',订单" =>'降级'));

I have this code below that basically creates 4 links to allow me to sort posts on the front end.

        <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(); ?>

The second link, ordering by date works fine but the two links to order by meta values is not working. I am obviously missing something in my query but for the life of me can't work it out.

Any ideas??

解决方案

It's quite simple:

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'
              ));

这篇关于使用元值订购 Wordpress 帖子的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆