在wp_query wordpress中按post_meta排序无法正常工作

时间:2016-07-10 04:34:52

标签: wordpress post-meta

我想在wordpress中按价格订购帖子,我尝试了很多并且还关注文档,所有看起来都不错,但仍然无法正常工作..

这是代码......

                        global $wp_query;
                        $query_vars = $wp_query->query_vars;
                        $post_per_page = 12;
                        global $term;
                        $term = (strip_tags($_GET['term']));
                        if (!empty($_GET['term'])) {
                            add_filter('posts_where', 'taskerdev_posts_where');
                        }

                        $meta_query = array();
                        $closed = array(
                            'key' => 'closed',
                            'value' => "0",
                            'compare' => '='
                        );
                        $meta_query[] = $closed;

                        if (!empty($_GET['tasker_cat_cat']))
                            $tasker_cat = array(
                                'taxonomy' => 'tasker_cat',
                                'field' => 'slug',
                                'terms' => $_GET['tasker_cat_cat']);

                        $meta_query[] = $tasker_cat;

                        $price = array(
                                'meta_key' => 'price',
                                'orderby' => 'meta_value_num',
                                'order' => 'ASC'  
                            );
                        $meta_query[] = $price;
                        $args = array('post_type' => 'shoping',  'posts_per_page' => 10,
                            'paged' => $query_vars['paged'], 'meta_query' => $meta_query);

此代码看起来不错,但我无法通过post_meta中的价格获得发布订单。 我甚至可以在wp_query的文档中看到这段代码来对结果进行排序。

                                $price = array(
                                'meta_key' => 'price',
                                'orderby' => 'meta_value_num',
                                'order' => 'ASC'  
                            );
                        $meta_query[] = $price;

1 个答案:

答案 0 :(得分:0)

你确定元数据价格是数字吗?

'orderby' => 'meta_value_num',

仅适用于数字字段..如果值为数字,则取决于字段中保存的价格格式。

可能发布一个示例值,以便人们看到真正的价值是什么