WordPress at a glance

is_singular() WP 1.5.0

Checks whether the post page is viewed (post, page, attachment, any post type). Conditional Tag.

This function combines conditional tags: is_single(), is_page(), is_attachment() and custom post types.

You can specify the specific type of post that you want to check in the $post_types parameter.

Notes:

  • See: is_page()
  • See: is_single()
  • Global. WP_Query. $wp_query Global WP_Query instance.
✈ 1 time = 0.00005s = very fast | 50000 times = 0.02s = speed of light

No Hooks.

Return

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

Usage

if( is_singular($post_types) ){
	// ... 
}
$post_types(string/array)
Post type or array of post types.
Default: ''

Examples

#1 Content only on individual pages

With this code, you can display different ads units in the sidebar for posts pages and other pages (archives).

if ( is_singular() ) {
	// Advertising №1
}
else {
	// Advertising №2
}

#2 How to determine a single page of the specified type

This example shows how to determine a single page of the post type: book

if( is_singular('book') ){
	// Code that will only work on pages with the 'book' post type
}

#3 Determine multiple post types

An example showing how to pass several types of posts in an array.

if( is_singular( array('newspaper', 'book') ) ){
	// some code 
}

Code of is_singular: wp-includes/query.php VER 4.9.8

<?php
function is_singular( $post_types = '' ) {
	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_singular( $post_types );
}

Related Functions

From tag: Conditional tags (page type and request)

More from tag: Conditional tags (all)

More from category: Queries

More from Template Tags: Main Functions

No comments
    Hello, !     Log In . Register