Ticket #5439 (closed defect (bug): worksforme)

Opened 4 years ago

Last modified 4 years ago

page displaying wrong comments

Reported by: dcostalis Owned by: anonymous
Priority: normal Milestone:
Component: Template Version: 2.3.1
Severity: normal Keywords: comments has-patch widgets 2nd-opinion
Cc:

Description

Depending on how widgets are set up, and the layout of the page, WordPress may display the wrong comments for a post.

The widget.php file uses a variable $id, which is used frequently throughout code. That variable is not unset, and moving the sidebar code above the comment code while this widget is active will cause the comments_template function to instead display comments from the last post on the "recent posts" list. solution proposed.

Attachments

widgets.php[1].diff Download (310 bytes) - added by dcostalis 4 years ago.
updated proposed fix
fix_comments_query.patch Download (388 bytes) - added by ionfish 4 years ago.
reset_query.diff Download (831 bytes) - added by ryan 4 years ago.
reset_query.2.diff Download (851 bytes) - added by ryan 4 years ago.
recent_query_3.diff Download (433 bytes) - added by ionfish 4 years ago.

Change History

updated proposed fix

Tarski  hacks around this issue by adding the following code below the sidebar widgets block, but it would be much better if this weren't necessary.

$wp_the_query->current_post--;
setup_postdata($wp_query->next_post());
  • Keywords needs-patch added

Patch from 12/07/07 doesn't work for me. Included post reset does fix it, but obviously ideally the widgets code would be better isolated from the page or post loop.

ionfish4 years ago

  • Keywords has-patch widgets 2nd-opinion added; needs-patch removed
  • Component changed from General to Template

Added a patch that seems to fix this.

ryan4 years ago

comment:4   ryan4 years ago

How about having wp_reset_query() reset the global post data? See patch (untested).

comment:5   ryan4 years ago

Does that patch work for anyone?

Sorry, been a really busy week. Having just tested this, it doesn't seem to fix my Tarski issue. I commented out the hack I mentioned above, applied the hack, and found all my posts getting the same comments, from the last article on the 'Recent Articles' widget list.

ryan4 years ago

comment:7   ryan4 years ago

Maybe that will work better.

ionfish4 years ago

Doesn't work... but this does.

comment:9   ryan4 years ago

  • Status changed from new to closed
  • Resolution set to fixed

(In [6653]) Restore global post when resetting the query. Props ionfish. fixes #5439

(In [6688]) Don't advance post counter when resetting query. see #5439

  • Status changed from closed to reopened
  • Resolution fixed deleted

Using next_post() causes problems with other themes. Reverting and reopening.

  • Status changed from reopened to closed
  • Resolution set to worksforme
  • Milestone 2.5 deleted

#6687 has resolved this for me.

[6687], rather.

Note: See TracTickets for help on using tickets.