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 entradas,¬†Todas las p√°ginas,¬†Etiquetas¬†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