Come rilevare se is_404() o is_page() o altre condizioni in WordPress?

12 set 2014, 09:42:40
Visualizzazioni: 15.2K
Voti: 0

Esiste un modo per ottenere un output come questo:

echo $current_type;

che mi restituisca:

is_404() oppure is_page() o qualsiasi altra condizione is_blabla()

1
Commenti

La tua domanda è stata contrassegnata come "non è chiaro cosa stai chiedendo" e ho espresso il mio voto in tal senso. Come ho chiesto nella tua domanda precedente, cosa stai cercando di ottenere. Nella forma attuale, nessuno sa quale sia il risultato atteso. Per favore, fai una [modifica] e spiega perché hai bisogno di fare questo, cosa stai cercando di ottenere con il risultato atteso

Pieter Goosen Pieter Goosen
12 set 2014 10:55:48
Tutte le risposte alla domanda 1
1

is_404() e is_page() sono semplicemente dei condizionali che verificano se una condizione esiste. Ad esempio, is_404() verifica semplicemente se la pagina corrente è una pagina 404 e restituisce true in caso di successo e false in caso di fallimento.

AVVISO MOLTO IMPORTANTE: I tag di query condizionali non funzionano prima che la query venga eseguita. Prima di allora, restituiranno sempre false

Puoi ottenere gli oggetti dalla pagina corrente semplicemente eseguendo un var_dump su get_queried_object() come nell'esempio seguente:

 <?php
 $queried_object = get_queried_object();
 var_dump( $queried_object );
 ?>

MODIFICA

Tutti questi condizionali sono impostati nella classe WP_Query, e poi separatamente incapsulati in una funzione in wp-includes/query.php. Ad esempio, is_404() è semplicemente un wrapper per $wp_query->is_404();

697 /**
698  * La query è un 404 (non restituisce risultati)?
699  *
700  * @see WP_Query::is_404()
701  * @since 1.5.0
702  * @uses $wp_query
703  *
704  * @return bool
705  */
706 function is_404() {
707         global $wp_query;
708 
709         if ( ! isset( $wp_query ) ) {
710                 _doing_it_wrong( __FUNCTION__, __( 'I tag di query condizionali non funzionano prima che la query venga eseguita. Prima di allora, restituiranno sempre false.' ), '3.1' );
711                 return false;
712         }
713 
714         return $wp_query->is_404();
715 }
12 set 2014 09:58:28
Commenti

ed è esattamente quello che volevo, ottenere la stringa is_ABCD indipendentemente dall'oggetto corrente. grazie.

T.Todua T.Todua
1 set 2016 14:22:19