[wp-trac] [WordPress Trac] #46929: posts with the same post_date does not

WordPress Trac noreply at wordpress.org
Mon Apr 15 10:55:40 UTC 2019


#46929: posts with the same post_date does not
------------------------------+-----------------------------
 Reporter:  robertklodzinski  |      Owner:  (none)
     Type:  enhancement       |     Status:  new
 Priority:  normal            |  Milestone:  Awaiting Review
Component:  General           |    Version:  5.1.1
 Severity:  normal            |   Keywords:
  Focuses:                    |
------------------------------+-----------------------------
 When a list of posts has exactly the same `post_date`, then the post order
 is broken. Moreover, the same post can be displayed on another page. The
 ordering also differs for different values of `posts_per_page`.

 Steps to reproduce (the issue can be seen also in wp-admin):
 1. create list of posts with the same `post_date`. You can manually change
 the date in the database. I stumbled upon this issue while cloning posts
 while using the [https://wordpress.org/plugins/duplicate-post/ Duplicate
 Post] plugin to duplicate posts for testing. It may be a good idea to have
 unique titles to visually see the problem.
 2. See the results
 3. Change the number of posts per page and verify them (do so for
 different number of posts per page)

 A workaround I used in my case was to order by `post_date` and
 additionally by `ID` (the higher `ID`, the newer DB record, so if a post
 has the same `post_date`, but higher `ID`, it should be also displayed
 higher on the list):

 {{{#!php
 <?php
 function fix_post_order($query) {
   $query->set( 'orderby', [ 'date' => 'DESC', 'ID' => 'DESC' ] );
 }
 add_action( 'pre_get_posts', 'fix_post_order' );
 }}}

 Probably such case would not happen in pure WP without touching the DB
 (that's why I'm not creating a defect ticket), but I believe additional
 order by `ID` (apart from `post_date`) would be a good idea, anyway.

-- 
Ticket URL: <https://core.trac.wordpress.org/ticket/46929>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list