我有一个简单的Wordpress查询,列出了我的自定义帖子类型结果。
目前,他们按照创建帖子的日期顺序列出。
我需要它们按照我从最近到最旧命名的自定义字段的顺序列出
。我无法将第二个查询合并到我的搜索结果中。
如何确保所有帖子按release_year排序?
非常感谢。
$landscape-min-height: 200px;
$tablet-portrait-height: 1024px;
$tablet-portrait-width: 768px;
答案 0 :(得分:5)
您需要按release_year
订购,但是您要将release_category
指定为元键,因此无法知道您是否想要使用其他密钥。
您面临的主要问题是您不能拥有两个meta_key
args。相反,您需要使用meta_query
参数。
$posts = get_posts(array(
'post_type' => 'discography',
'posts_per_page' => -1,
'meta_key' => 'release_year',
'orderby' => 'meta_value_num',
'order' => 'DESC',
'meta_query' => array(
array(
'key' => 'release_category',
'value' => 'album',
),
),
));
元查询用于设置发布类别,meta_key
值已更改为您要订购的密钥。我还设置了meta_value_num
的顺序,这在处理数值时很重要。最后,您需要使用降序。
进一步阅读:https://codex.wordpress.org/Class_Reference/WP_Meta_Query
https://codex.wordpress.org/Class_Reference/WP_Query#Order_.26_Orderby_Parameters