自定义 Wordpress 查询中自定义帖子的顺序不符合预期
Order of custom posts in custom Wordpress query not as expected
我有一个自定义的 Wordpress 查询,如下所示:
$args = array(
'post_type' => 'publication',
'post_status' => 'publish',
'category_name' => 'my-category',
'posts_per_page' => 20,
'orderby' => 'publication_year',
'order' => 'DESC',
'paged' => $paged
);
$loop1 = new WP_Query($args);
我正在查询自定义 post 类型,只需要具有特定类别的 post。 FWIW,我使用 PODS 创建了 post 类型。查询正常工作,但有一个小例外 - order
子句:
orderby
字段引用名为 "publication_year" 的 date
字段,它只显示年份值 2015、2014、2013 等,但在数据库中包含完整的日期,如“ 2013-01-18" 和类似的。
现在,我通过上述查询得到的顺序是 2013、2014、2015 - 虽然 order
是 DESC
,但我希望相反。如果我将其更改为 ASC
,我将得到 2015、2014、2013!
我不明白 - 我希望升序为 2013、2014、2015 等。我哪里错了?
publication_year
不是 wp_posts
table 中的列。参见WordPress Database Description。如果 orderby
参数无效,WordPress 将回退到默认排序,即 post_date
列。
如果它是元值,您应该使用:
$args = array(
'post_type' => 'publication',
'post_status' => 'publish',
'category_name' => 'my-category',
'posts_per_page' => 20,
'orderby' => 'meta_value_num',
'meta_key' => 'publication_year',
'order' => 'DESC',
'paged' => $paged
);
有关详细信息,请参阅 WordPress codex。
我有一个自定义的 Wordpress 查询,如下所示:
$args = array(
'post_type' => 'publication',
'post_status' => 'publish',
'category_name' => 'my-category',
'posts_per_page' => 20,
'orderby' => 'publication_year',
'order' => 'DESC',
'paged' => $paged
);
$loop1 = new WP_Query($args);
我正在查询自定义 post 类型,只需要具有特定类别的 post。 FWIW,我使用 PODS 创建了 post 类型。查询正常工作,但有一个小例外 - order
子句:
orderby
字段引用名为 "publication_year" 的 date
字段,它只显示年份值 2015、2014、2013 等,但在数据库中包含完整的日期,如“ 2013-01-18" 和类似的。
现在,我通过上述查询得到的顺序是 2013、2014、2015 - 虽然 order
是 DESC
,但我希望相反。如果我将其更改为 ASC
,我将得到 2015、2014、2013!
我不明白 - 我希望升序为 2013、2014、2015 等。我哪里错了?
publication_year
不是 wp_posts
table 中的列。参见WordPress Database Description。如果 orderby
参数无效,WordPress 将回退到默认排序,即 post_date
列。
如果它是元值,您应该使用:
$args = array(
'post_type' => 'publication',
'post_status' => 'publish',
'category_name' => 'my-category',
'posts_per_page' => 20,
'orderby' => 'meta_value_num',
'meta_key' => 'publication_year',
'order' => 'DESC',
'paged' => $paged
);
有关详细信息,请参阅 WordPress codex。