is_post_publicly_viewable( int|WP_Post|null $post = null ): bool

Determines whether a post is publicly viewable.

Description

Posts are considered publicly viewable if both the post status and post type are viewable.

Parameters

$postint|WP_Post|nulloptional
Post ID or post object. Defaults to global $post.

Default:null

Return

bool Whether the post is publicly viewable.

Source

function is_post_publicly_viewable( $post = null ) {
	$post = get_post( $post );

	if ( ! $post ) {
		return false;
	}

	$post_type   = get_post_type( $post );
	$post_status = get_post_status( $post );

	return is_post_type_viewable( $post_type ) && is_post_status_viewable( $post_status );
}

Changelog

VersionDescription
5.7.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.