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