我正在编辑一个现有的 Wordpress 主题,该主题在自定义查询中使用自定义字段。我需要编辑查询,以便结果按一个自定义字段筛选,并按第二个自定义字段排序。
这是我到目前为止尝试过的:
<?php
$query_args = array();
$query_args['post_type'] = 'woo_estate';
$query_args['meta_query'] = array(
array(
'key' => 'on_show',
'value' => 'true'
),
array(
'key' => 'price',
'type' => 'numeric',
)
);
$query_args['orderby'] = 'price';
$query_args['order'] = 'ASC';
$query_args['posts_per_page'] = $woo_options['woo_more_entries'];
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$query_args['paged'] = $paged;
?>
<?php query_posts( $query_args ); ?>
问题是结果继续按默认(日期)排序,而不是按 price
自定义字段排序。
如何让此查询按自定义价格字段排序?
最佳答案
在此处的文档中挖掘了一下:http://codex.wordpress.org/Class_Reference/WP_Query我能够想出实现我需要的代码。
$query_args = array();
$query_args['post_type'] = 'woo_estate';
$query_args['meta_query'] = array(
array(
'key' => 'on_show',
'value' => 'true'
)
);
$query_args['meta_key'] = 'price';
$query_args['orderby'] = 'meta_value_num';
$query_args['order'] = 'DESC';
$query_args['posts_per_page'] = $woo_options['woo_more_entries'];
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$query_args['paged'] = $paged;
query_posts( $query_args )
关于wordpress - 在Wordpress中,当查询中有多个自定义字段时,如何按自定义字段排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14076528/