Php 按倍数排序
我在wordpress中有一个查询,看起来像这样Php 按倍数排序,php,wordpress,Php,Wordpress,我在wordpress中有一个查询,看起来像这样 $args = array( 'post_type' => 'our-team', 'post_status' => 'publish', 'posts_per_page' => -1, 'orderby' => array( 'date_published' => 'ASC', )
$args = array(
'post_type' => 'our-team',
'post_status' => 'publish',
'posts_per_page' => -1,
'orderby' => array(
'date_published' => 'ASC',
)
);
我想按两个属性对我的结果进行排序,首先是按发布的日期,然后是我的a元值“权重”。权重是一个数值(1或2)
当我将其更改为查询时
$args = array(
'post_type' => 'our-team',
'post_status' => 'publish',
'posts_per_page' => -1,
'meta_key' => 'weight',
'orderby' => array(
'date_published' => 'ASC',
'meta_value' => 'ASC'
)
);
当我运行此查询时,它只返回权重为1的帖子?使用
date
而不是date\u published
我认为date\u published
不是正确的键。权重应该是整数,所以最好使用meta\u value\u num
而不是meta\u value
试试下面的代码
$args = array(
'post_type' => 'our-team',
'posts_per_page' => -1,
'post_status' => 'publish',
'meta_key' => 'weight',
'orderby' => array( 'meta_value_num' => 'ASC', 'post_date' => 'ASC' )
);
$args = array(
'post_type' => 'our-team',
'posts_per_page' => -1,
'post_status' => 'publish',
'meta_key' => 'weight',
'orderby' => array(
'date' => 'ASC'
'meta_value_num' => 'ASC'
)
);