Marcadores condicionales de WordPress

Existen funciones condicionales propias de WordPress que devuelven true o false. Están directamente relacionadas con el tipo de archivo PHP (plantilla de página) que se muestra en el navegador.

Por ejemplo, is_home() verifica que esté en la página de inicio, lo que corresponde al archivo de visualización index.php.

A continuación se muestran algunas funciones:

  • is_home(): para la página principal de inicio y las páginas paginadas, lo que corresponde al archivo index.php.

  • is_frontpage(): para la página principal de inicio, sin paginación, lo que corresponde al archivo index.php.

  • is_page(): para las páginas, lo que corresponde al archivo página.php. Acepta como argumento el id, el título o el enlace permanente.

  • is_single(): para las entradas, lo que corresponde al archivo single.php. Acepta como argumento el id, el título o el enlace permanente.

  • is_tax(): para las taxonomías se trata de una categoría o de una etiqueta. Atención, esta función devuelve false en una página de categoría y de etiqueta.

  • is_category(): para las categorías, lo que corresponde al archivo category.php en algunos temas. Acepta como argumento el id, el nombre de la categoría o el enlace permanente.

  • is_tag(): para las etiquetas, lo que corresponde al archivo tag.php en algunos temas. Acepta como argumento el id, el nombre de la etiqueta o el enlace permanente.

  • is_author(): para los autores, lo que corresponde al archivo author.php o archive.php en algunos temas. Acepta como argumento el id, el nombre del autor o el enlace permanente.

  • is_archive(): para una página de tipo archivo, lo que corresponde al archivo archive.php.

  • is_404(): para una página 404, lo que corresponde al archivo 404.php.

  • is_search(): para una búsqueda, lo que corresponde al archivo search.php.

  • is_paged(): para una página paginada, lo que corresponde al archivo archive.php o a la página de inicio si está paginada. Esto no se refiere a una entrada o una página cuyo contenido se dividirá usando la etiqueta HTML (quicktags) <!–nextpage–>.

  • comments_open(): cuando los comentarios están abiertos y aceptados, lo que corresponde al archivo comments.php.

  • have_posts(): cuando hay entradas. En general, esta función se utiliza antes del bucle WordPress (the loop), que recupera el contenido de las entradas y de las páginas.

  • has_post_thumbnail(): cuando la entrada tiene una imagen. En general esta función se utiliza en el bucle, que recupera el contenido de las entradas y de las páginas.

  • function_exists(’nombre_de_la_función’): cuando la función existe (función propia de PHP).

Ejemplos

Este código permite ver «Bienvenido» si es la página de inicio; por tanto, si es el archivo index.php:

if (is_home()){ 
     echo ’Bienvenido’; 
}

Este código permite ver «Bienvenido a mi página», si es la página «sobre…». El archivo mostrado es página.php y el título de la página debe ser «sobre…» para ver el mensaje de bienvenida.

if (is_page(’sobre...’)){ 
     echo ’Bienvenido a mi página’; 
}

Este código permite ver «Bienvenido en mi página», si es la página con id 20. El archivo mostrado es página.php y el título de la página debe tener el id 20 para ver el mensaje de bienvenido.

if (is_page(’20’)){ 
     echo ’Bienvenido a mi página’; 
}

Para conocer el id de una entrada, página, etiqueta o categoría, vaya a las pestañas Todas las entradasTodas las páginasEtiquetas o Categorías, y pase el ratón por encima del título de la entrada, página, etiqueta o categoría.

Entonces, se muestra la URL del enlace en la parte inferior de su navegador. Para las entradas y las páginas, el id es el valor del argumento post; para las etiquetas y las categorías, el id es el valor del argumento tag_ID.

El id de la página Página de ejemplo es 2, porque el valor del argumento post en la URL del enlace es 2 (post=2).

Puede encontrar la lista completa de los marcadores condicionales en el codex: https://codex.wordpress.org/Conditional_Tags