W3cubDocs

/WordPress

is_post_type_viewable( string|WP_Post_Type $post_type )

Determines whether a post type is considered “viewable”.

Description

For built-in post types such as posts and pages, the ‘public’ value will be evaluated. For all others, the ‘publicly_queryable’ value will be used.

Parameters

$post_type

(string|WP_Post_Type) (Required) Post type name or object.

Return

(bool) Whether the post type should be considered viewable.

Source

File: wp-includes/post.php

function is_post_type_viewable( $post_type ) {
	if ( is_scalar( $post_type ) ) {
		$post_type = get_post_type_object( $post_type );
		if ( ! $post_type ) {
			return false;
		}
	}

	return $post_type->publicly_queryable || ( $post_type->_builtin && $post_type->public );
}

Changelog

Version Description
4.6.0 Converted the $post_type parameter to accept a WP_Post_Type object.
4.5.0 Added the ability to pass a post type name in addition to object.
4.4.0 Introduced.

© 2003–2019 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/is_post_type_viewable