Determines whether the query is for a post or page preview.

Description Description

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

Return Return


Top ↑

Source Source

File: wp-includes/query.php

function is_preview() {
	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_preview();

Top ↑

Changelog Changelog

Version Description
2.0.0 Introduced.

Top ↑

User Contributed Notes User Contributed Notes

  1. Skip to note 2 content
    Contributed by giacomolaw
    function comments_template( $file = '/comments.php', $separate_comments = false ) {
    global $wp_query, $withcomments, $post, $wpdb, $id, $comment, $user_login, $user_ID, $user_identity, $overridden_cpage;
    if ( ! ( is_single() || is_page() || $withcomments ) || empty( $post ) ) {
    if ( is_preview() ) {

    Useful to stop comments showing in the preview, especially if you use Disqus Conditional Load. This made the preview work for me, as DCL stopped them from working. Add this to wp-includes/comment-template.php.

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