WP_Query('orderby = post_date')无法使用wordpress

时间:2010-12-25 11:18:20

标签: php wordpress

WP_Query('orderby=post_date')无法使用wordpress。

如何按降序对帖子进行排序?

6 个答案:

答案 0 :(得分:26)

WP_Query('orderby=date&order=DESC') 

答案 1 :(得分:9)

以下3个参数将从发布之日起以升序显示帖子(即旧帖子将首先显示)

'post_status'=> 'publish','orderby'=> 'publish_date','order'=> 'ASC'

当您将订单更改为 DESC 时,您将从发布日期开始按降序排列(即最新的帖子将首先显示)

'post_status'=> 'publish','orderby'=> 'publish_date','order'=> 'DESC'

<?php
$postsPerPage = 10;
$page = 1;
?>
<?php
$query = new WP_Query(array(
    'cat' => 4,
    'post_status' => 'publish',
    'orderby' => 'publish_date',
    'order' => 'ASC',
    'paged' => $page,
    'posts_per_page' => $postsPerPage));
?>

答案 2 :(得分:7)

要按修改日期订购,请使用orderby=modified

WP_Query( 'orderby=modified&order=DESC' ) 

有关更多可能的值,请参阅the documentation

答案 3 :(得分:5)

试试这个

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
    $args = array(
    "post_type" => "post",
      "post_status" => "publish",
      "paged" => $paged,
      "orderby" => "date",
      "order" => 'ASC'
       );
     WP_Query($args);

答案 4 :(得分:0)

如果您使用PostTypesOrder plugin,则可能会全局修改您的查询,以避免针对特定帖子类型的这种行为

add_filter('pto/posts_orderby/ignore', 'theme_pto_posts_orderby', 10, 3);

function theme_pto_posts_orderby($ignore, $orderBy, $query)
{
       if( (! is_array($query->query_vars['post_type']) && $query->query_vars['post_type'] == 'post') ||
       (is_array($query->query_vars)   &&  in_array('post', $query->query_vars)))
               $ignore = TRUE;
       return $ignore;
}

答案 5 :(得分:0)

再说一遍,我把头发拉出来的原因是,一直以来,我都在列表中得到相同的项目,所以我才意识到需要添加:

'ignore_sticky_posts' => true,

我希望别人能在我之前注意到这一点。