Codex

Interested in functions, hooks, classes, or methods? Check out the new WordPress Code Reference!

it:Tag condizionali

Contents

Introduzione

I tag condizionali possono essere utilizzati nel proprio file di template per cambiare il contenuto visualizzato e come questo contenuto viene visualizzato in una specifica pagina in funzione di quali condizioni hanno una corrispondenza in tale pagina. Ad esempio si potrebbe voler visualizzare un piccolo testo prima di una serie di articoli, ma solo nella pagina principale del blog. Con il tag condizionale is_home() questa operazione è semplicissima.

Si noti che vi è una stratta relazione fra questi tag e la Gerarchia dei template di WordPress.

Attenzione: È possibile utilizzare i tag condizionali di query solo dopo posts_selection action hook di WordPress (l'action hook wp è il primo nel quale è possibile utilizzare questi tag condizionali). Per i temi, ciò significa che il tag condizionale non opererà mai correttamente se lo si utilizza nel corpo del file functions.php, quindi all'esterno di una funzione.

Le condizioni per...

Tutti tag condizionali eseguono un test per verificare se si verifica una certa condizione e quindi restituiscono o TRUE oppure FALSE. Le condizioni per le quali i vari tag restituiscono TRUE sono elencate qui di seguito. Viene anche indicato se un tag accetta un qualche tipo di parametro.

La pagina principale

is_home() 
When the main blog page is being displayed. This is the page which shows the time based blog content of your site, so if you've set a static Page for the Front Page (see below), then this will only be true on the Page which you set as the "Posts page" in Administration > Settings > Reading.

La pagina inziale

is_front_page() 
Quando viene visualizzata la pagina inziale del sito, sia che si tratti di articoli che di una Pagina. Restituisce true quando viene visualizzata la pagina principale del blog ed in 'Impostazioni > Lettura ->La pagina iniziale mostra' è impostata a "Gli ultimi articoli", oppure quando in 'IMpostazioni > Lettura ->La pagina iniziale mostra' è impostata a "Una pagina statica" ed il valore di "Pagina iniziale" è si visualizza Pagina lì impostata.

Il pannello di amministrazione

is_admin()
Quando viene visualizzata la bacheca o uno dei pannelli di amministrazione.

Una pagina di un singolo articolo

is_single() 
Quando viene visualizzata la pagina di un qualsiasi articolo (o allegato, o Tipo di articolo personalizzato ). (False per le Pagine)
is_single( '17' ) 
Quando l'articolo di ID 17 viene visualizzato come articolo singolo.
is_single( 'Stufato irlandese' ) 
Quando l'articolo dal titolo "Stufato irlandese" viene visualizzato come articolo singolo.
is_single( 'stufato-di-carne' ) 
Quando l'articolo con abbreviazione (slug) "stufato-di-carne" viene visualizzato come articolo singolo.
is_single( array( 17, 'stufato-di-carne', 'Stufato irlandese' ) ) 
Restituisce true quando viene visualizzato un singolo articolo che abbia ID 17, il post_name è "stufato-di-carne" oppure il post_title è "Stufato irlandese".
is_single( array( 17, 19, 1, 11 ) ) 
Restituisce true quando viene visualizzato un articolo singolo che abbia post ID = 17, post ID = 19, post ID = 1 oppure post ID = 11.
is_single( array( 'stufato-di-carne', 'zuppa-di-piselli', 'chili' ) ) 
Restituisce true quando si visualizza un articolo singolo che abbia post_name "stufato-di-carne", post_name "zuppa-di-piselli" oppure post_name "chili".
is_single( array( 'Stufato irlandese', 'Zuppa di piselli', 'Chili' ) ) 
Restituisce true quando si visualizza un articolo singolo in cui post_title sia "Stufato irlandese", post_title sia "Zuppa di piselli" oppure post_title sia "Chili".

Nota: Questa funzione non fa distinzione fra l'ID articolo, il titolo dell'articolo o il nome dell'articolo. Un articolo di nome "17" verrà visualizzato se se viene richiesto un ID articolo uguale a 17. Si consideri la stessa cosa anche per un articolo con abbreviazione "17".

Un articolo in evidenza

is_sticky() 
Restituisce true se la casella di spunta "Mantenere questo articolo sempre in prima pagina" è stata spuntata per l'articolo corrente. In questo esempio, non viene fornito alcun ID articolo, quindi viene utilizzato l'ID dell'articolo per l'articolo corrente del Loop.
is_sticky( '17' ) 
Restituisce true quando l'articolo 17 è un articolo da mantenere sempre in prima pagina.

Un tipo di articolo

get_post_type() 
Non si tratta di un vero tag condizionale, restituisce il tipo di articolo registrato per l'articolo corrente.
if ( 'libro' == get_post_type() ) ... 
Verifica che l'articolo corrente sia di tipo 'libro'.
is_singular()
Restituisce true per is_singular, is_page, e is_attachment. Permette di verificare anche il tipo di articolo.
post_type_exists() 
Restituisce true se l'articolo indicato è un tipo di articolo registrato. Non verifica se un articolo è di un determinato post_type. Nota: Questa funzione sostituisce una funzione denominata is_post_type che è esistita per breve tempo durante lo sviluppo della versione 3.0.

Un tipo di articolo è gerarchico

is_post_type_hierarchical( $post_type ) 
Restituisce true se $post_type è stato impostato come supporta le gerarchie quando è stato registrato.
is_post_type_hierarchical( 'libro' ) 
Restituisce true se il tipo di articolo libro è stato registrato con il supporto alle gerarchie.

Un archivio di tipo di articolo

is_post_type_archive() : Restituisce true per qualsiasi archivio di tipi di articolo.
is_post_type_archive( $post_type ) : Restituisce true se ci si trova in un pagine di archivio per un tipo di articolo che corrisponde a $post_type (può essere un tipo articolo singolo o un array di tipi di articolo).

Per attivare gli archivi per un tipo di articolo, utilizzare 'has_archive' => true, quando si registra un tipo di articolo.

Un popup dei commenti

is_comments_popup() 
Quando ci si trova in una finestra popup dei commenti.

Una qualsiasi pagina contenente articoli

comments_open()
Quando i commenti sono abilitati per l'articolo correntemente processato dal Loop di WordPress.
pings_open()
Quando sono consentiti i ping per l'articolo correntemente processato dal Loop di WordPress.

Una pagina di PAGINA

Questa sezione fa riferimento alle Pagine di WordPress, non una generica pagina web del blog, in altre parole al post_type di tipo 'page'.

is_page() 
Quando viene visualizzata una Pagina qualsiasi.
is_page( 42 ) 
Quando viene visualizzata Pagina (ID) 42.
is_page( 'Su di me e Joe' ) 
Quando viene visualizzata la Pagina con un post_title "Su di me e Joe".
is_page( 'su-di-me' ) 
Quando viene visualizzata la Pagina con un post_name (slug) uguale a "su-di-me".
is_page( array( 42, 'su-di-me', 'Su di me e Joe' ) ) 
Restituisce true quando viene visualizzata la Pagina con post ID = 42 oppure post_name è "su-di-me" oppure post_title è "Su di me e Joe".
is_page( array( 42, 54, 6 ) ) 
Restituisce true quando viene visualizzata una Pagina che abbia post ID = 42 oppure post ID = 54 oppure post ID = 6.

Test per Pagine paginate

Èpossibile utilizare questo codice per verificare se ci si trova nella ennesima pagina di un articolo o di una PAGINA che è stato/a diviso/a in diverse pagine utilizzando il QuickTag <!--nextpage-->. Ciò è utili, ad esempio, se si desidera visualizzare dei metadati solo sulla prima pagina di un articolo suddiviso in più pagine.

Esempio 1

<?php         
$paged = $wp_query->get( 'page' );

if ( ! $paged || $paged < 2 ) 
{
    // Questa non è una pagina paginata (o è semplicemente la prima pagina di un articolo/pagina paginato)

} 
else 
{
   // Questa è una pagina paginata.

}
?>

Esempio 2

<?php
$paged = get_query_var( 'page' ) ? get_query_var( 'page' ) : false;
if ( $paged === false ) 
{
    // Questa non è una pagina paginata (o è semplicemente la prima pagina di un articolo/pagina paginato)

} 
else 
{
   // Questa è una pagina paginata.

}
?>

Test per le sottoPagine

Non esiste ancora una funzione is_subpage() ma è possibile verifcarlo con questo piccolo pezzo di codice:

Codice 1

<?php

global $post;     // se all'esterno del loop

if ( is_page() && $post->post_parent ) {
    // Questa è una sottopagina

} else {
    // Questa non è una sottopagina
}
?>

È possibile creare la propria funzione is_subpage() utilizando il Codice 2. Aggiungerlo al file functions.php. Verifica che esista una pagina geniitore nello stesso modo del Codice 1, ma restituisce l'ID della pagina genitore se ne esiste una oppure false se non esiste.

Codice 2

function is_subpage() {
    global $post;                              // carica i dettagli di questa pagina

    if ( is_page() && $post->post_parent ) {   // controlla se la pagina ha un genoitore
        return $post->post_parent;             // restituisce l'ID della genitore

    } else {                                   // non vi è alcun genitore quindi...
        return false;                          // ... la risposta alla domanda è false
    }
}

È opportuno usare una funzione tipo quella del Codice 2 invece di un semplice test come nel Codice 1 quando si preveda di eseguire spesso il test per verificare la presenza diun genitore.

Per verificare se il genitore di una data pagina è una pagina specifica, ad esempio "Informazioni" (page id pid 2), si può utilizzare il test del Codice 3. Questi test cercano di verificare se si sta guardando la pagina in questione così come verifica se si sta guardando una pagina figlia. Ciò è utile per impostare variabili specifiche per diverse sezioni del sito web, come ad esempio una immagine banner differente oppure una etsta differente.

Codice 3

<?php

if ( is_page( 'informazioni' ) || '2' == $post->post_parent ) {    
    // La pagina è "informazioni" oppure il genitore della pagina è "Informazioni"
    $bannerimg = 'about.jpg';

} elseif ( is_page( 'lezioni' ) || '56' == $post->post_parent ) {	
    $bannerimg = 'teaching.jpg';

} elseif ( is_page( 'ammissioni' ) || '15' == $post->post_parent ) { 
    $bannerimg = 'admissions.jpg';

} else { 
    $bannerimg = 'home.jpg'; // solo nel caso che si si trovi in una pagina non classificata ad esempio la home page
}	

?>

COdice 4 è una funzione che permette di gestire questo test più semplicemente. Questa funzione restituisce true se si sta vedendo la pagina in questione (quindi "Informazioni") oppure uan delle sue sottopagine (quindi una pagina con genitore di ID "2").

Codice 4

function is_tree( $pid ) {      // $pid = L'ID della pagina per la quale stiamo cercando eventuali sottopagine
    global $post;               // carica i dettagli di questa pagina

    if ( is_page($pid) )
        return true;            // siamo in questa pagina o in una sottopagina

    $anc = get_post_ancestors( $post->ID );
    foreach ( $anc as $ancestor ) {
        if( is_page() && $ancestor == $pid ) {
            return true;
        }
    }

    return false;  // non siamo in questa pagina e la pagina non è un antenata
}

Aggiungere il Codice 4al proprio file functions.php e richiamare is_tree( 'id' ) per verificare se la pagina corrente è questa pagina o è una sottopagina di questa. Nel Codice 3, is_tree( '2' ) sostituirebbe "is_page( 'about' ) || '2' == $post->post_parent" all'interno del primo tag if.

Si noti che se si ha più di un livello di pagine la pagina genitore è quella direttamente sopra e non quella in cima alla gerarchia.

È un template di pagina

Pemette di determinare se ci si trovi o meno un un template di pagina o se si sta utilizzando uno specifico template di pagina.

is_page_template() 
Si sta utilizzando un Template di pagina?
is_page_template( 'about.php' ) 
Si sta utilizzando il Template di pagina 'informazioni'? SI noti che a differenza di altri tag condizionali, se si desidera specificare un Template di pagina specifico, occorrerà indicare il nome del file come ad esempioabout.php oppure my_page_template.php.

Una pagina di categoria

is_category() 
Quando si visualizza una qualsiasi pagina di archivio di categoria.
is_category( '9' ) 
Quando si visualizza una pagina di archivio per la Categoria 9.
is_category( 'Formaggi erborinati' ) 
Quando si visualizza una pagina di archivio per la Categoria di nome "Formaggi erborinati".
is_category( 'blue-cheese' ) 
Quando si visualizza una pagina di archivio per la Categoria con una abbraviazione (slug di categoria) "gorgonzola".
is_category( array( 9, 'blue-cheese', 'Stinky Cheeses' ) ) 
Restituisce true quando la categoria degli articoli visualizati ha term_ID 9 oppure slug "gorgonzola" oppure name "Formaggi erborinati".
in_category( '5' ) 
Restituisce true se l'articolo corrente si trova nella categoria con l?ID specificato. read more
in_category( array( 1,2,3 ) ) 
Restituisce true se gli articoli correnti si nelle categorie 1, 2 o 3.
! in_category( array( 4,5,6 ) ) 
Restituisce true se l'articolo corrente NON si trova nella categoria 4, 5 o 6. Si noti il ! all'inizio.

Nota: Assicurarsi di verificare la correttezza del test, "is" e "in" sono notevolemnte differenti.

Si veda anche is_archive() e i Template di categoria.

Una pagina di tag

is_tag() 
Quando viene visualizzata una pagina archivio di un tag.
is_tag( 'mild' ) 
Quando viene visualizzata la pagina di archivio per il tag con abbraviazione (slug) 'leggero'.
is_tag( array( 'forte', 'leggero', 'estremo' ) ) 
Restituisce true quando la pagina visualizzata è di un tag con abbreviazione (slug) "forte", "leggero" oppure "estremo".
has_tag() 
Quando l'articolo corrente ha un tag. De essere utilizzato all'interno del Loop.
has_tag( 'leggero' ) 
Quando l'articolo corrente ha il tag 'leggero'.
has_tag( array( 'forte', 'leggero', 'estremo' ) ) 
Quando l'articolo corrente ha uno qualsiasi dei tag dell'array.

Si veda anche is_archive() e I tag dei template.

Una pagina di tassonomia

is_tax() 
Quando viene visualizzata una pagina di archivio di una Tassonomia.
is_tax( 'gusto' ) 
Quando viene visualizzata una pagina di archivio per la tassonomia gusto.
is_tax( 'gusto', 'leggero') 
Quando viene visualizzata una pagina di archivio della tassonomia gusto con abbreviazione (slug) 'leggero'.
is_tax( 'gust', array( 'forte', 'leggero', 'estremo' ) ) 
Restituisce true quando viene visualizzata una pagina di archivio della tassonomia gusto che abbia l'abbreviazione (slug) "forte", "leggero" oppure "estremo".
has_term() 
Verifica che l'articolo corrente abbia una dei termini indicati. Il primo parametro può essere una stringa vuota. Si aspetta come secondo parametro l'abbreviazione/nome di una tassonomia.
has_term( 'verde', 'colore' ) 
Quando l'articolo corrente ha il termine 'verde' dalla tassonomia 'colore'.
has_term( array( 'verde', 'arancione', 'blu' ), 'colore' ) 
Quando l'articolo corrente ha una qualsiasi dei termini dell'array per la tassonomia indicata.

Si veda anche is_archive().

Una tassonomia registrata

taxonomy_exists() 
Quando una tassonomia è stata registrata tramite register_taxonomy(). Precedentemente era is_taxonomy(), che è stata deprecata con la Versione 3.0

Una pagina autore

is_author() 
Quando viene visualizzata una qualsiasi pagina autore.
is_author( '4' ) 
Quando viene visualizzata una pagina di archivio per l'autore numero (ID).
is_author( 'Vivian' ) 
Quando viene visualizzata una pagina di archivio per l'autore con Nickname "Vivian".
is_author( 'john-jones' ) 
Quando viene visualizzata una pagina di archivio per l'autore con Nicename "john-jones".
is_author( array( 4, 'john-jones', 'Vivian' ) ) 
Quando viene visualizzata una pagina di archivio per l'autoreche sia di ID 4 oppure user_nicename "john-jones" oppure nickname "Vivian".

Si veda anche is_archive() e Template autore.

Un sito multi autore

is_multi_author( ) 
Quando più di un autore ha pubblicato articoli per un sito. Disponibile dalla Versione 3.2.

Una pagina di una data

is_date() 
quando viene visualizzata una qualsiasi pagina di archivio per data (quindi un archivio per mese, anno, giorno a per orario).
is_year() 
Quando viene visualizzata una pagina di archivio per anno.
is_month() 
Quando viene visualizzata una pagina di archivio per mese.
is_day() 
Quando viene visualizzata una pagina di archivio per giorno.
is_time() 
Quando viene visualizzata una pagina di archivio per ora o per "minuto" o per "secondo".
is_new_day() 
Se oggi è un nuovo giorno rispetto alla data dell'articolo. Deve essere utilizzata all'interno del Loop.

Si veda anche is_archive().

Una pagina archivio qualsiasi

is_archive() 
Quando viene visualizzato un qualsiasi tipo di pagina di archivio. Pagine di categoria, tag autore e di data sono tutte tipologie di archivio.

Una pagina di ricerca

is_search() 
Quando viene visualizzata una pagina con i risultati di una ricerca.

Una pagina 404 Not Found

is_404() 
Quando si visualizza una pagina dopo che si è verificato un errore "HTTP 404: Not Found".

Una paginazione di Pagina

is_paged() 
Quando la pagina attualmente visualizzata è "paginata". CI si riferisce ad una pagina di archivio o alla pagina prncipale che sono suddivise in diverse pagine e che restituisce true dalla seconda pagina di articoli e dalla pagine successive. Non fa riferimento a Articoli o Pagine il cui contenuto è stato suddiviso in più pagine tramite il QuickTag <!--nextpage--> . Per verificare se un articolo o una pagina sono stati suddivisi in più pagine utilizzando il QuickTag <!--nextpage--> si veda #Test per Pagine paginate.

Un allegato

is_attachment() 
Quando viene visualizzato un documento allageto ad un articolo o ad una Pagina. Un allegato è una immagine o un altro tipo di file caricato tramite la funzione presente nell'editor degli articoli. >Gli allegatio possono venir visualizzati in una loro 'pagina' o template. Per maggiori informazioni si veda Using Image and File Attachments.

Una pagina singola, un articolo singolo o un allegato

is_singular() 
Quando viene restituito true da una qualsiasi di questi: is_single(), is_page() o is_attachment().
is_singular( 'libro' ) 
True quando si visualizza un articolo Custom Post Types libro.
is_singular( array( 'giornale', 'libro' ) ) 
True quando si visualizza un articolo di un Custom Post Types giornale o libro.

Un feed (syndication)

is_feed() 
QUando la richiesta al sito è un Feed (syndication). Questo tag non viene solitamente utilizzato dagli utenti; viene utilizzato all'interno di WordPress ed è disponibile per gli sviluppatori di plugin.

Ha un trackback

is_trackback() 
Quando la richiesta al sito è un hook di WordPress verso il suo motore di trackback. Questo tag non viene solitamente utilizzato dagli utenti; viene utilizzato all'interno di WordPress ed è disponibile per gli sviluppatori di plugin.

Una anteprima

is_preview() 
QUando viene visulizzato un singolo articolo in modalità bozza.

Ha un riassunto

has_excerpt() 
Quando l'articolo corrente ha un riassunto
has_excerpt( 42 ) 
Quando l'articolo di ID 42 ha un riassunto.
<?php
// recupera $post se si è all'interno di una funzione
global $post;

if ( empty( $post->post_excerpt ) ) {
    // Questo articolo non ha un riassunto
} else {
    // Questo articolo ha un riassunto
}
?>


Altro utilizzo

Quando si ha la necessità di nascondere il riassunto automatico e visualizzare solo i propri riassunti degli articoli.

<?php if ( ! has_excerpt() ) {
      echo '';
} else { 
      the_excerpt();
}

Sostituire il riassunto con del testo o del codice.

<?php if ( ! has_excerpt() ) {?>
    <!-- qui il proprio testo o codice -->
<?php } ?>

Ha assegnato un menu di navigazione

has_nav_menu() 
Quando uan delle posizioni di menu registrate ha assegnato un menu di navigazione

Restituisce: assegnato(true) o no(false)

All'interno del Loop

in_the_loop() 
Verifica se ci si trova "all'interno del loop". Utile per gli sviluppatori di plugin, questo tag condizionale restituisce true quando ci si trova all'interno del Loop.

La barra laterale è attiva

is_active_sidebar() 
Controlla se la barra laterale indicata è attiva (in uso). Restituisce true se la barra laterale (identificata per nome o id o numero) è in uso, in caso contrario la funzione restituisce false.

Parte di una rete (Multisito)

is_multisite() 
Verifica se il sito corrente si trova in una installazione di WordPress MultiSito.

Sito principale (Multisito)

is_main_site() 
Determina se il sito è quello principale di una rete.

Amministratore di una rete (Multisito)

is_super_admin() 
Determina se l'utente è un (super) amministratore di una rete.

Un plugin attivo

is_plugin_active() 
Verifica se un plugin è attivo.

Un tema figlio (child theme)

is_child_theme() 
Verifica se è in uso un tema figlio (child theme).

Il tema supporta una funzionalità

current_theme_supports() 
Verifica se esistono varie funzionalità di un tema.

Esempi

Ecco alcuni esempi funzionanti che dimostrano l'utilizzo di questi tag condizionali.

Articolo singolo

Queso esempio mostra come utilizzare is_single() per mostrare qualche cosa di particolare solo quando si visualizza una pagina di un singolo articolo:

if ( is_single() ) {
   echo 'QUesta è solo una delle fantastiche voci della categoria ' . single_cat_title() . '!';
}


Altro esempio di come utilizzare i tag condizionali all'interno del Loop. Scegliere se visualizzare il contenuto o il riassunto in index.php, quando viene usato come archivio unico per visualizzare singoli articoli, categorie, home page e pagine.

if ( is_home() || is_single() ) {
   the_content();
}
else {
   the_excerpt();
}

Quando si ha necessità di visualizzare del codice o un elemento in un posto che non sia la home page.

<?php if ( ! is_home() ) {?>

 Inserire il proprio codice...

<?php }?>

Differenze in base alla data

Se qualcuno navigato il sito per data, distinguiamo gli aritcoli di anni diversi utilizzando colori diversi:

<?php
// qui inizia Il Loop
if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<h2 id="post-<?php the_ID(); ?>">
<a href="<?php the_permalink() ?>" rel="bookmark" title="Link permanente a <?php the_title(); ?>">
<?php the_title(); ?></a></h2>
<small><?php the_time('j F Y') ?> <!-- by <?php the_author() ?> --></small>

<?php
// stiamo visualizzando un archivio per data?
if ( is_date() ) {
     if ( date( 'Y' ) != get_the_date( 'Y' ) ) {
          // questo articolo è stato scritto l'anno scorso
          // quindi diamo uno stile al contenuto utilizzando la classe "oldentry"
          echo '<div class="oldentry">';
     } else {
          echo '<div class="entry">';
     }
} else {
     echo '<div class="entry">';
}

the_content( 'Leggi il resto di questo articolo »' ); 

?>
</div>

Contenuto variabile nella barra laterale

Questo esempio visualizzerà un diverso contenuto sulla barra laterale in base a quale pagina si sta visualizzando.

<!-- inizio sidebar -->
<div id="sidebar">
<?php
// Generiamo le info appropriate al tipo di pagina visualizzata
if ( is_home() ) {
    // siamo in home page, mostriamo allora un elenco di tutte le categorie principali
    echo "<ul>";
    wp_list_categories( 'optionall=0&sort_column=name&list=1&children=0' );
    echo "</ul>";
} elseif ( is_category() ) {
    // stiamo vedendo una singola categoria, mostriamo quindi _tutte_ le categorie
     echo "<ul>";
    wp_list_categories( 'optionall=1&sort_column=name&list=1&children=1&hierarchical=1' );
    echo "</ul>";
} elseif ( is_single() ) {
    // Stiamo vedendo una pagina singola, quindi decidiamo di non mostrare nulla nella barra laterale
} elseif ( is_page() ) {
    // stiamo vedendo una pagina statica. Quale?
    if ( is_page( 'INformazioni' ) ) {
        // la nostra pagina informazioni.
        echo "<p>Questa è la mia pagina informazioni!</p>";
    } elseif ( is_page( 'Colophon' ) ) {
        echo "<p>Questa è la mia pagina colophon, utilizziamo WordPress " . bloginfo( 'version' ) . "</p>";
    } else {
        // per tutte le altre pagine
        echo "<p>Votate per Pedro!</p>";
    }
} else {
    // per tutto il resto (archivi, ricerche, 404 ecc)
    echo "<p>Pedro vi offre la sua protezione.</p>";
} // That's all, folks!
?>
<form id="searchform" method="get" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<div>
<input type="text" name="s" id="s" size="15" />
<input type="submit" value="<?php _e( 'Search' ); ?>" />
</div>
</form>

</div>
<!-- end sidebar -->

Una pagina 404 utile

L'articolo Creating an Error 404 Page riporta un esempio di utilizzo della funzione condizionale PHP isset() nella sezione Writing Friendly Messages.

Evidenziare un menu dinamico

L'articolo Dynamic Menu Highlighting analizza come utilizzare i tag condizionali per evidenziare la pagina corrente all'interno di un menu.

All'interno del file del tema footer.php

A volte le query eseguite in altri template come ad esempio sidebar.php possono corrompere alcuni tag condizionali. Per esempio, in header.php un tag condizionale funziona correttamente mentre non funziona nel footer.php del tema. Il trucco consiste nel mettere un wp_reset_query prima dei test condizionali inseriti nel piè di pagina. Ad esempio:

<?php
wp_reset_query();
if ( is_page( '2' ) ) {
    echo 'Questa è la pagina 2!';
} 
?>

Indice dei tga condizionali

Elenco alfabetico

Riferimento funzioni

See also index of Function Reference and index of Template Tags.