Cómo hacer aparecer widgets sólo en los contenidos que te interesa

Hace unos días veíamos cómo crear una CTA fija en la barra lateral con el plugin Q2W3 Fixed Widget y mencionamos el tema de lo potente que sería si pudiéramos hacer aparecer los widgets sólo en los contenidos que quisiéramos. Pues bien, hoy vamos a atacar este asunto y veremos cómo crear widgets condicionales en WordPress con el plugin Widget Logic.

Pasos para crear widgets condicionales en WordPress

Si no tienes tiempo para ver el vídeo, te pongo aquí los pasos que hemos seguido para crear nuestros widgets condicionales y conseguir que aparezcan sólo en los contenidos que deseamos.

0.- Crea una copia de seguridad

Cómo siempre, antes de instalar un nuevo plugin en una web en producción, el paso previo será crear una copia de seguridad para asegurarnos de poder volver atrás en caso de liarla.

1.- Instalar el plugin Widget Logic

Ve a Plugins->Añadir nuevo y en el buscador pega Widget Logic. También puedes visitar su página de plugin en el repositorio, descargarlo y subirlo desde plugins.

Si estás empezando en WordPress y todavía o estás familiarizado con la instalación de plugins, en el siguiente vídeo te muestro cómo añadir plugins a tu web.

Y si quieres saber más sobre los plugins para tener confianza y seguridad, en mi guía de plugins WordPress repasamos muchos aspectos que te ayudarán a ello.

2.- Elige un Widget

Ve a Apariencia->Widgets y elige un widget cualquiera. Vamos a probar con uno que ya tengas en la barra lateral por ejemplo. Extiende las opciones del widget pulsando el triangulito que está en la esquina derecha superior. Ahora verás una nueva caja donde puedes introducir tus condiciones.

3.- Encuentra las condiciones que necesitas

Ve a conditional tags en el codex de WordPress y busca las condiciones que se adapten a tus necesidades. No te asustes. Al final es copiar y pegar básicamente.

4.- Introduce la condición seleccionada

Pega la condicional seleccionada en la cajita del widget y guarda. ¡Listo! Ahora ese widget atenderá a las condiciones que has usado.

Cómo mostrar un widget sólo en los contenidos que te interesa

En el vídeo ya hemos visto cómo añadir las condiciones a los widgets para que aparezcan o no en según que contenidos. A continuación vamos a ver los casos más comunes para crear widgets condicionales en WordPress.

Además de las conditional tags disponemos de operadores lógicosHay infinidad de opciones utilizando los conditional tags del codex. Además siempre puedes combinar código con la potencia de los operadores lógicos de php:

  • Utiliza ! para negar una condición.
  • Utiliza || para hacer que se cumpla una condición si uno de los dos elementos es cierto.
  • Utiliza && si lo que quieres es que se cumplan las dos condiciones para que el widget se muestre.

Cómo mostrar un widget sólo en los posts

Si quieres que un determinado widget aparezca sólo en los posts (todos ellos) tendrás que añadirle:

is_single()

Si lo que quieres es que aparezca en un determinado post, necesitas saber el id del mismo (mira el vídeo) e incluirlo en la condición que tienes que añadir al widget:

is_single(21)

Si quieres que un widget aparezca en todos los contenidos menos en los posts tienes que utilizar la negación tal que así:

!is_single()

Si lo que buscas es que un widget aparezca en todos los posts menos en uno concreto, entonces tienes que combinar lo anterior con la negación:

!is_single(21)

Cómo mostrar widgets en el blog

Si quieres que un determinado widget aparezca sólo en el blog, utiliza este condicional:

is_home()

Cómo mostrar un widget sólo en las páginas

Para hacer que un widget aparezca en todas las páginas de tu web utiliza:

is_page()

El resto de combinaciones es como en los posts.

Cómo mostrar un widget sólo cuando el usuario esté logueado

Imagina que tienes un menú especial para usuarios registrados en tu web. Éste menú da acceso a contenidos que los usuarios no logueados no pueden ver. Pues una buena idea sería crear un widget en la barra lateral con este menú que sólo puedan ver los usuarios logueados. Para ello utilizaríamos:

is_user_logged_in()

Y con esto cerramos el asunto. Ya has visto lo fácil que es crear widgets condicionales en WordPress con este potente y ligero plugin. Hay más opciones claro, y de hecho, creo que voy a revisar otro de los plugins que más me gustan. Pero hasta el momento, el plugin Widget Logic es el que más me gusta para hacer aparecer widgets dónde yo quiera.

Si te ha parecido útil compártelo para que otros usuarios con la misma duda se beneficien de ello y para apoyarme a mi y conseguir así un poquito más de visibilidad. ¡Gracias! 🙂

YouTube video
Ilustración de Aprender WordPress gratis en mi canal de youtube

🎓 Curso GRATIS para dominar tu Hosting WP

Consulta entre 28 tareas típicas si tienes una web o te dedicas a WordPress profesionalmente.
👀 Mira las marcas de tiempo para ir a lo que te interesa.
Ver en Youtube
Inicia sesión

Sólo los socios del club de expertos pueden utilizar esta funcionalidad.