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

Determines whether the query is for an existing single page.


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

For more information on this and similar theme functions, check out the Conditional Tags article in the Theme Developer Handbook.

See also



(int|string|int[]|string[]) (Optional) Page ID, title, slug, or array of such to check against.

Default value: ''


(bool) Whether the query is for an existing single page.

More Information


  • Will return true if an empty value is passed
  • Due to certain global variables being overwritten during The Loop, is_page() will not work. In order to call it after The Loop, you must call wp_reset_query() first.


File: wp-includes/query.php

function is_page( $page = '' ) {
	global $wp_query;

	if ( ! isset( $wp_query ) ) {
		_doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' );
		return false;

	return $wp_query->is_page( $page );


Version Description
1.5.0 Introduced.

© 2003–2019 WordPress Foundation
Licensed under the GNU GPLv2+ License.