[wp-trac] [WordPress Trac] #7745: Private posts cannot have unpublished or pending review status
WordPress Trac
noreply at wordpress.org
Mon Jul 29 02:34:00 UTC 2013
#7745: Private posts cannot have unpublished or pending review status
----------------------------------+-----------------------------
Reporter: nyoungman | Owner:
Type: enhancement | Status: new
Priority: low | Milestone: Future Release
Component: General | Version: 2.6.1
Severity: minor | Resolution:
Keywords: needs-patch ui-focus |
----------------------------------+-----------------------------
Comment (by sworddance):
It seems the real problem is that there are 2 orthogonal issues at work
that are not being treated orthogonally: Visibility and Status.
Currently ( 3.7-alpha24822 ) there are very bizarre interactions as a
result.
1. Create a post
1. Change its Visibility to Private
1. Status now changes to 'Privately Published'
1. Status does not have an edit link any more
Then try this:
1. Create a post
1. Click on Status edit button (so the status selection box is displayed)
1. Click on Visibility Edit button
1. Change Visibility to Private
1. Click on Visibility 'OK' button
1. Status option box changes to allow 'Pending Review', 'Draft',
'Privately Published'
1. Select 'Draft' and click on status 'OK' button.
1. Status becomes 'Privately Published' ( not Draft like user requested )
and the edit button disappears.
Comments:
1. Visibility and Status are not logically the same :
1. Visibility is the MAXIMUM POSSIBLE visibility.
1. Status is a workflow status that may impose a maximum
calculated_visibility
1. If Visibility controls Status then Status should be visually
subordinate to Visibility. Currently it looks like Status should control
visibility. (which from a work flow perspective I would think that it
would be the case.)
1. Visibility and Status interact in a non-intuitive manner.
Suggestions:
1. Status should be used to determine the CURRENT maximum visibility of a
post.
1. Visibility determines the absolute maximum visibility of the post.
so conceptual the question is :
{{{
current_user_can('read_post', $post_id) ;
}}}
with the answer being determined by:
{{{$actual_visibility = max ( status_max(), visibility_max(), }}}
{{{ <some calculation depending on current_user's relationship to the
post> ) }}}
--
Ticket URL: <http://core.trac.wordpress.org/ticket/7745#comment:14>
WordPress Trac <http://core.trac.wordpress.org/>
WordPress blogging software
More information about the wp-trac
mailing list