WP_Query::is_page( int|string|int[]|string[] $page = '' ): bool

Determines whether the query is for an existing single page.

Description

If the $page parameter is specified, this function will additionally check if the query is for one of the pages specified.

See also

Parameters

$pageint|string|int[]|string[]optional
Page ID, title, slug, path, or array of such to check against.

Default:''

Return

bool Whether the query is for an existing single page.

Source

public function is_page( $page = '' ) {	if ( ! $this->is_page ) {	return false;	}	if ( empty( $page ) ) {	return true;	}	$page_obj = $this->get_queried_object();	if ( ! $page_obj ) {	return false;	}	$page = array_map( 'strval', (array) $page );	if ( in_array( (string) $page_obj->ID, $page, true ) ) {	return true;	} elseif ( in_array( $page_obj->post_title, $page, true ) ) {	return true;	} elseif ( in_array( $page_obj->post_name, $page, true ) ) {	return true;	} else {	foreach ( $page as $pagepath ) {	if ( ! strpos( $pagepath, '/' ) ) {	continue;	}	$pagepath_obj = get_page_by_path( $pagepath );	if ( $pagepath_obj && ( $pagepath_obj->ID === $page_obj->ID ) ) {	return true;	}	}	}	return false; } 

Changelog

VersionDescription
3.1.0Introduced.

User Contributed Notes

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