在Wordpress中,当查询中有多个自定义字段时,如何按自定义字段排序?
我正在编辑在自定义查询中使用自定义字段的现有Wordpress主题。我需要编辑查询,以便按一个自定义字段过滤结果,并按第二个自定义字段排序 这就是我迄今为止所做的尝试:在Wordpress中,当查询中有多个自定义字段时,如何按自定义字段排序?,wordpress,wordpress-theming,Wordpress,Wordpress Theming,我正在编辑在自定义查询中使用自定义字段的现有Wordpress主题。我需要编辑查询,以便按一个自定义字段过滤结果,并按第二个自定义字段排序 这就是我迄今为止所做的尝试: <?php $query_args = array(); $query_args['post_type'] = 'woo_estate'; $query_args['meta_query'] = array( array( 'key' => 'on_show', 'value'
<?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
自定义字段排序
如何通过自定义价格字段将此查询下订单?在此处的文档中挖掘了一些信息后:我能够找到实现我所需的代码
$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 )
要按自定义字段排序,您必须在数组中添加
meta\u键
,并且orderby
对于数字应该是meta\u值
或meta\u值
,因此在本例中,它应该是meta\u值
,因为它是数字
$query_args['meta_key'] = 'price';
$query_args['orderby'] = 'meta_value_num';
$query_args['order'] = 'ASC';
$query_args['meta_query'] = array(
array(
'key' => 'on_show',
'value' => 'true'
)
);
// ...
,您也可以看一看。+1,对于您自己的问题,您自己通过挖掘文档找到了这个不错的答案。