我的WordPress帖子有两个自定义字段"episode_number"season_number"
我想选择所有season_number=5(示例)的帖子,并按episode_number DESC 对它们进行排序
我已经写过这个
$max_season=5;
$args = array(
'meta_key' => 'season_number',
'meta_compare' =>'==',
'meta_value' => $max_season,
'orderby' => 'episode_number',
'order' => 'DESC',
);
$wp_query = new WP_Query($args);
基于season_number作品的选择,但我无法对它们进行排序,使用此代码wordpress根据发布时间对它们进行排序
有人可以帮助我吗?
我相信WordPress只会查询您请求的指定元数据,即key=season_number
,value=5
(季节编号)。它不会查询键episode_number
的帖子元数据,因此您无法直接在SQL查询中按该字段进行排序。
您要么需要循环查询结果并获取每个项目的元数据以供key=episode_number
并相应地填充新的排序数组,要么需要找出一种方法在单个查询中也查询此元数据。
对于第二个,我不知道这将如何工作。
我原来的答案不合时宜,我误读了问题
尝试这样的事情:
$max_season=5;
$args = array(
'meta_key' => 'episode_number',
'orderby' => 'meta_value_num',
'order' => 'DESC',
'meta_query' => array(
array(
'key' => 'season_number',
'value' => array($max_season),
'compare' => 'IN',
)
)
);
$wp_query = new WP_Query($args);