Cuando is_single, is_home, is_page no funcionan en WordPress

Cuando estamos personalizando nuestro WordPress y sobre todo queremos mejorar su rendimiento, el uso de algunas funciones de WordPress para saber en que tipo de página estamos cómo is_single, is_home, is_page y el resto nos podemos encontrar con que no funcionan…parece como si nuestro WordPress pasara de ellas.

En mi caso suelo recurrir a estas funciones bien para incluir en el footer algunos javascripts o css que solo requieren ser cargados en las páginas de artículos (como un plugin que muestre cuantas veces se ha compartido el artículo en las redes sociales) o en el sidebar para mostrar diferentes contenidos o publicidad si están en la home o en alguna otra parte de la web.

Si alguna vez os ocurre que no se ejecutan correctamente estas funciones condicionales seguramente es porque habéis modificado la query de WordPress o lo haya hecho un plugin por vosotros. En este caso la solución es muy sencilla y lo único que hay que hacer es ejecutar la función que WordPress trae para resetear la query “por defecto” con wp_reset_query();.


<?php
wp_reset_query();
if ((is_single()) || (is_page())) 
{ 
	echo 'Imprimir el código que queramos si estamos en un artículo o en una página';
}
?>

WordPress

Deja un comentario

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

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>