WordPress at a glance
function is not described

WP_Query::is_singular() WP 3.1.0

Is the query for an existing single post of any post type (post, attachment, page, custom post types)?

If the $post_types parameter is specified, this function will additionally check if the query is for one of the Posts Types specified.

This is a method of the class: WP_Query

No Hooks.


true/false. Whether the query is for an existing single post of any of the given post types.


$WP_Query = new WP_Query();
$var = $WP_Query->is_singular( $post_types );
Post type or array of post types.
Default: ''


  • See: WP_Query::is_page()
  • See: WP_Query::is_single()


Since 3.1.0 Introduced.

Code of WP Query::is singular: wp-includes/class-wp-query.php WP 5.2.3

public function is_singular( $post_types = '' ) {
	if ( empty( $post_types ) || ! $this->is_singular ) {
		return (bool) $this->is_singular;

	$post_obj = $this->get_queried_object();

	return in_array( $post_obj->post_type, (array) $post_types );