Make WordPress Core

Opened 6 years ago

Last modified 2 months ago

#18264 new defect (bug)

Future private posts listed as already published with future date specified

Reported by: chrisrudzki Owned by:
Milestone: Awaiting Review Priority: normal
Severity: normal Version:
Component: Posts, Post Types Keywords: needs-patch ux-feedback ui-feedback editorial-flow needs-design
Focuses: ui, administration Cc:


Setting a post to private, and scheduling it for some future date or time, results in the stamp that the post was "Published on (future date)" in the publish module.

The discussion on tickets #5608 and #9136 suggests that all private posts are published immediately (and privately), and that this is intentional. So, it's misleading and confusing to report that it already was published on some future date.

In source:trunk/wp-admin/includes/meta-boxes.php#L163, I suggest we replace:

else if ( 'publish' == $post->post_status || 'private' == $post->post_status ) { // already published
		$stamp = __('Published on: <b>%1$s</b>'); }


else if ( 'publish' == $post->post_status ) { // already publicly published
		$stamp = __('Published on: <b>%1$s</b>');
	} else if (  'private' == $post->post_status ) { // published privately
		$stamp = __('Published privately'); }

Change History (14)

#1 @chrisrudzki
6 years ago

  • Keywords needs-patch added

#2 @nacin
6 years ago

  • Keywords ux-feedback ui-feedback added

Yeah, this is a UI issue. A post cannot be both future-scheduled and privately published.

#3 @jane
6 years ago

I think the whole concept of Privately Published is wrong, and we should re-evaluate it completely. The way that language is used on wordpress.com (private to the group of your choosing) makes a lot more sense. Saving content so it's viewable only to author/admin is more like a private save. If no one else can view it, it's not really published in the normal sense, right?

#4 @scribu
5 years ago

I just ran into this exact issue myself. Ideally, we would deprecate the "private" status altogether and leave it to plugins to implement "publish to group" or whatever else they need using taxonomies.

#5 @scribu
5 years ago

My quick fix for not showing future private posts on the front-end:

function fix_future_private( $sql, $wp_query ) {
	global $wpdb;

	$sql .= $wpdb->prepare( " AND $wpdb->posts.post_date <= %s", current_time('mysql') );

	return $sql;

if ( !is_admin() )
	add_filter( 'posts_where', 'fix_future_private', 10, 2 );
Last edited 5 years ago by scribu (previous) (diff)

#7 @kovshenin
5 years ago

  • Cc kovshenin added

#8 @danielbachhuber
5 years ago

  • Keywords editorial-flow added

#9 follow-up: @danielbachhuber
5 years ago

  • Cc danielbachhuber added

@kovshenin maybe we can assess this as a part of editorial flow user testing and make a decision what should be done. Personally, I think "Privately Published" is confusing but I don't know that deprecating it is the right answer.

It's also odd that the "View Page" link doesn't show:


#10 in reply to: ↑ 9 @kovshenin
5 years ago

@danielbachhuber I agree, though I don't think deprecating the post status is the way to go. I think it can live, but perhaps it should become like any other post status, and not a UI of its own. I also think that scheduling a transition from one post status to another should work, regardless what the two statuses are, so the new statuses API (as discussed) should be flexible enough to support this.

#11 @jeremyfelt
4 years ago

  • Component changed from Administration to Posts, Post Types
  • Focuses admin added

#12 @chriscct7
2 years ago

  • Focuses ui added

This ticket was mentioned in Slack in #design by karmatosed. View the logs.

2 months ago

#14 @karmatosed
2 months ago

  • Keywords needs-design added

I agree this should be fixed, we discussed as a team in queue triage today. It would be great to have a visual for this so adding tag for 'needs-design'.

Note: See TracTickets for help on using tickets.