简体   繁体   中英

WP_Query('orderby=post_date') not working with wordpress

WP_Query('orderby=post_date') is not working with wordpress.

how do I sort my posts in descending order?

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

The following 3 parameters will give you the posts in Ascending order from the date it was published (ie The older posts will be shown first)

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

When you change the order to DESC you will get the posts in Descending order from the date it was published (ie The latest posts will be shown first)

'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));
?>

To order by the modification date you have use orderby=modified .

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

See the documentation for more possible values.

Try this

$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);

If you are using PostTypesOrder plugin it might globally modify your query, in order to avoid this behaviour to particular post type

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;
}

Just one more note, I pulled my hair out because all the time I was getting the same items in the list, than I realized I needed to add:

'ignore_sticky_posts' => true,

I hope someone else will notice this before I did.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM