is_post_type_viewable() only returns a boolean. This strictness is by design to maintain backwards-compatibility and guard against potential type errors in PHP 8.1+. Non-boolean values (even falsey and truthy values) will result in the function returning false.$is_viewablebool$post_typeWP_Post_Typewp-includes/post.php:2399is_post_type_viewable() * * @since 5.9.0 * * @param bool $is_viewable Whether the post type is "viewable" (strict type). * @param WP_Post_Type $post_type Post type object. */ return true === apply_filters( 'is_post_type_viewable', $is_viewable, $post_type );} /** * Determines whether a post status is considered "viewable". * * For built-in post statuses such as publish and private, the 'public' value will be evaluated.Introduced in 5.9.0. Unchanged from 6.7.7 through 7.1.0.
Signature, return type and hooks compared across 5 parsed releases.