Mod de a detecta dacă este is_404() sau is_page() sau etc...?
există vreo metodă de a afișa, în felul următor:
echo $current_type;
și să obținem:
is_404()
sau is_page()
sau orice altceva is_blabla()

is_404()
și is_page()
sunt pur și simplu condiționale care verifică dacă o condiție există. De exemplu, is_404()
verifică dacă pagina curentă este o pagină 404 și returnează true în caz de succes și false în caz de eșec.
FOARTE IMPORTANT: Etichetele condiționale de interogare nu funcționează înainte ca interogarea să fie rulată. Până atunci, ele întotdeauna returnează false
Puteți obține obiecte de pe pagina curentă făcând un simplu var_dump
pe get_queried_object()
, de exemplu:
<?php
$queried_object = get_queried_object();
var_dump( $queried_object );
?>
EDITARE
Toate aceste condiționale sunt setate în clasa WP_Query
, și apoi încapsulate separat într-o funcție în wp-includes/query.php
. De exemplu, is_404()
este doar un wrapper pentru $wp_query->is_404();
697 /**
698 * Este interogarea o eroare 404 (nu returnează rezultate)?
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__, __( 'Etichetele condiționale de interogare nu funcționează înainte ca interogarea să fie rulată. Până atunci, ele întotdeauna returnează false.' ), '3.1' );
711 return false;
712 }
713
714 return $wp_query->is_404();
715 }
