Ticket #3827 (closed defect (bug): fixed)

Opened 5 years ago

Last modified 5 years ago

private posts are not appearing on main page for users with read_private_posts

Reported by: molecularbear Owned by: anonymous
Priority: normal Milestone: 2.1.3
Component: General Version: 2.1.2
Severity: normal Keywords: has-patch commit
Cc:

Description

I created a new role that is identical to the Author role except that it included the "read_private_posts" and "read_private_pages" capabilities. I expected that people who were assigned the new role would then be able to view all private posts. What happened was that the new role could view private posts via direct link (i.e., permalink), but the private entries would not appear on the main page.

I tracked the issue down to get_posts() in wp-includes/query.php. Basically, there is some code there that will get the private posts if the user has "edit_private_posts". I changed this to "read_private_posts" and seem to have gained the functionality that I was looking for; I also changed "edit_private_posts" to "read_private_posts" for good measure. I have attached a patch that describes this. Is there a reason why these are "edit_" capabilities instead of "read_"?

Attachments

query.patch Download (405 bytes) - added by molecularbear 5 years ago.
patch to query.php

Change History

patch to query.php

  • Version changed from 2.1 to 2.2
  • Milestone changed from 2.3 to 2.1.2

Changing to Milestone 2.2 since that seems to be where the action is.

  • Version changed from 2.2 to 2.1

Err, fixing the Version.

Note that the second-to-last sentence in the description should read:

I changed this to "read_private_posts" and seem to have gained the functionality that I was looking for; I also changed "edit_private_pages" to "read_private_pages" for good measure.

There, I think I've finally debugged my bug report.

  • Version changed from 2.1 to 2.1.1

This is still an issue in 2.1.1 and the same patch still applies.

  • Keywords has-patch commit added; read_private_posts removed
  • Status changed from new to closed
  • Resolution set to fixed

(In [4940]) Use correct capabilities checks when determining whether to show private posts. Props molecularbear. fixes #3827

  • Status changed from closed to reopened
  • Version changed from 2.1.1 to 2.1.2
  • Resolution fixed deleted
  • Milestone changed from 2.1.2 to 2.1.3

This was marked to be included in 2.1.2, but the change does not appear to be in the latest source. Reopening in the hopes that the patch will make it into 2.1.3.

This was indeed only comitted to trunk.

comment:9   ryan5 years ago

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

(In [4971]) Use correct capabilities checks when determining whether to show private posts. Props molecularbear. fixes #3827

Note: See TracTickets for help on using tickets.