Descubra las etiquetas condicionales de WordPress

Descubra las etiquetas condicionales de WordPress

Todos usamos declaraciones condicionales en nuestros desarrollos de WordPress, ¿verdad? Pero sabes todo integrado Etiquetas condicionales de WordPress? Son geniales porque con estas etiquetas es muy fácil crear declaraciones condicionales. Por ejemplo, puede mostrar contenido solo a ciertos usuarios, o cargar scripts solo si una página usa una plantilla personalizada específica, o incluso diseñar una publicación si esa publicación es persistente.

Las etiquetas condicionales se pueden usar en sus temas o en sus complementos, no importa, pero tenga en cuenta que en algunos complementos a veces será un poco complicado usar ciertas etiquetas (en realidad, todas las etiquetas específicas del tema).

Etiquetas condicionales disponibles

Aquí está la lista de funciones condicionales disponibles:

Probablemente conozca algunos, pero ¿realmente conoce la diferencia entre is_single_ () e is_singular ()? ¿O entre id_day () e is_date ()? ¿Sabías que is_preview ()? Para comprender cómo funciona cada función, simplemente haga clic en el nombre de la etiqueta y lea atentamente las instrucciones del códice.

Todas las etiquetas condicionales devuelven VERDADERO o FALSO

Las etiquetas condicionales son una de mis funciones integradas favoritas de WordPress y realmente te animo a que las uses ampliamente en tus códigos. Todas las funciones siempre devuelven VERDADERO o FALSO, nunca una ID o una matriz ().

Una estrecha relación con la jerarquía de modelos.

Como sabrá, WordPress usa una plantilla realmente poderosa jerarquía sistema. Bueno, el uso de etiquetas condicionales está estrechamente relacionado con esta jerarquía. Este es el principio utilizado para seleccionar la plantilla de página que se utilizará de acuerdo con la URL que está visitando.

Las etiquetas condicionales aceptan muchos argumentos

Al usar estas etiquetas condicionales, debe tener en cuenta que puede pasarles varias variables como ID, slugs o matrices. Aquí hay un ejemplo tomado del códice con la función is_author ():

es_autor ()
Cuando se muestra una página de Autor.
es_autor ('4')
Cuando se muestra la página de archivo del número de autor (ID) 4.
is_author ('Vivian')
Cuando se muestra la página de archivo del autor con el apodo “Vivian”.
is_author ('john-jones')
Cuando se muestra la página de archivo del autor con el nombre “john-jones”.
es_autor (matriz (4, 'john-jones', 'Vivian'))
Cuando la página de archivo del autor es ID de usuario 4 o nique_username “John-jones”, o apodo “Vivian”.

Ejemplos de

Así es como funcionan casi todas las funciones condicionales, pero, por supuesto, puede combinar muchas condiciones:

if ( is_home() && in_category( array( 9, 'blue-cheese', 'Stinky Cheeses' ) ) ) {
   the_content();
}
else {
   the_excerpt();
}

o puede tomar medidas si ocurre una situación u otra:

if ( is_home() || in_category( array( 9, 'blue-cheese', 'Stinky Cheeses' ) ) ) {
   the_content();
}
else {
   the_excerpt();
}

Y si desea hacer una condición negativa, use “!”:

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

if ( ! $paged || $paged < 2 ) 
{
    // This is not a paginated page (or it's simply the first page of a paginated page/post)
} 
else 
{
   // This is a paginated page.
}

Y finalmente, usar etiquetas condicionales es como cualquier otra declaración PHP “else if”:

if ( is_page( 'about' ) || '2' == $post->post_parent ) {    
    // the page is "About", or the parent of the page is "About"
    $bannerimg = 'about.jpg';

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

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

} else { 
    $bannerimg = 'home.jpg'; // just in case we are at an unclassified page, perhaps the home page
}	

Crear etiquetas condicionales personalizadas

En algunos casos, debe crear sus funciones condicionales personalizadas. Esto es bastante fácil de hacer, pero muy a menudo los nombres de las funciones no siguen la misma lógica utilizada por los desarrolladores principales. Utilice la misma convención de nomenclatura con un prefijo como “es_“,”a_“,”dentro_“. Esto es muy útil, especialmente si no es la única persona que trabaja en un guión específico.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Ir arriba