Controlar la visibilidad del contenido en WordPress se ha convertido en una herramienta clave para diseñadores y desarrolladores que buscan una experiencia dinámica, personalizada y adaptable. Ya sea por motivos de programación de campañas, diseño responsive o control de acceso por roles, la posibilidad de mostrar u ocultar bloques del editor Gutenberg en función de determinadas condiciones mejora tanto la gestión del sitio como la experiencia del usuario.
En este artículo se detallan varias formas de gestionar la visibilidad de bloques, tanto mediante plugins como con fragmentos de código personalizado, adaptables a temas clásicos, híbridos o basados en bloques.
Plugins para gestionar la visibilidad condicional de bloques

1. Block Visibility
Uno de los plugins más completos y populares. Gratuito, sin versión premium, y con una interfaz intuitiva. Permite condicionar la visibilidad de cualquier bloque según múltiples reglas combinables:
- Dispositivo y navegador: adapta la visibilidad según el tipo de dispositivo o navegador.
- Fecha y hora: ideal para mostrar mensajes en horarios específicos o promociones temporales.
- Cookies y parámetros de URL: personalización avanzada basada en comportamiento previo o campañas.
- Geolocalización: permite ocultar o mostrar contenido según la ubicación del visitante.
- Rol de usuario: bloquea o revela contenido solo a ciertos perfiles (admin, suscriptor, etc.).
- Ruta de la URL o fuente de referencia: útil para mostrar contenido en secciones específicas o según el origen del visitante.
Incluye funciones adicionales como la creación de presets reutilizables, modo de control total y compatibilidad con el editor del sitio.
Ejemplo: mostrar un aviso de “Tienda abierta” entre las 8:00 y las 17:00 h, y ocultarlo fuera de ese horario.

2. Content Control
Más sencillo, pero útil. Permite controlar bloques según:
- Tipo de dispositivo: ideal para mostrar imágenes optimizadas según tamaño de pantalla.
- Rol de usuario: distingue entre usuarios conectados, desconectados, o según el perfil.
Además, incluye herramientas para copiar, pegar, restaurar o desactivar temporalmente las reglas aplicadas.
La versión premium amplía funciones con programación horaria, integración con WooCommerce, Easy Digital Downloads y lógica booleana avanzada.
3. Conditional Blocks
Menos conocido, pero potente. Destaca por:
- Lógica condicional avanzada (AND/OR).
- Visibilidad basada en conexión del usuario, tipo de dispositivo o parámetros de URL.
- Versión Pro con geolocalización, integración con WooCommerce, control por rol, programación y más.
4. Wicked Block Conditions
Plugin gratuito que destaca por su capacidad de personalización a través de funciones PHP, además de reglas por:
- Estado de sesión del usuario.
- Fecha y hora.
- Categoría o etiqueta de una entrada.
- Parámetros de la URL.
Una opción interesante para desarrolladores que desean combinar control visual con lógica personalizada.

Código personalizado para mostrar u ocultar contenido
Si se desea evitar el uso de plugins o se tiene un caso de uso concreto, es posible utilizar fragmentos de código para controlar la visibilidad de contenido. A continuación, algunos ejemplos:
🔐 Ocultar contenido si el usuario ha iniciado sesión
add_action( 'wp_head', 'ocultar_parrafos_para_logueados' ); function ocultar_parrafos_para_logueados() { if ( is_user_logged_in() ) { echo '<style>p { display: none !important; }</style>'; } }
También se puede invertir la lógica con !is_user_logged_in()
para ocultar a usuarios no conectados.
🌍 Ocultar contenido según la geolocalización
add_action('wp_head', 'ocultar_titulares_para_usuarios_usa'); function ocultar_titulares_para_usuarios_usa() { $ip = $_SERVER['REMOTE_ADDR']; $geo = wp_remote_get("https://ipapi.co/{$ip}/json/"); if ( is_wp_error($geo) ) return; $data = json_decode( wp_remote_retrieve_body($geo) ); if ( isset($data->country_code) && $data->country_code === 'US' ) { echo '<style>h1, h2, h3 { display: none !important; }</style>'; } }
⚠️ Se recomienda almacenar en caché la respuesta para evitar ralentizar la carga del sitio.
📚 Ocultar la imagen destacada según categoría
add_filter('post_thumbnail_html', 'ocultar_imagen_destacada_en_libros', 10, 2); function ocultar_imagen_destacada_en_libros($html, $post_id) { if ( has_category('libros', $post_id) ) { return ''; // Oculta imagen destacada } return $html; }
Consejos para probar tu configuración
Antes de aplicar estos métodos en producción:
- Usa un entorno de staging: evita riesgos al experimentar con plugins o código.
- Verifica el HTML generado: algunos métodos solo ocultan el contenido con CSS, pero siguen cargándose, lo cual puede afectar al SEO.
- Combina visibilidad condicional con diseño adaptativo: mejora la experiencia del usuario sin necesidad de múltiples versiones del contenido.
Conclusión
Mostrar u ocultar bloques en WordPress según condiciones abre una puerta enorme a la personalización, eficiencia y control de la experiencia de usuario. Ya sea mediante plugins como Block Visibility, Conditional Blocks o Content Control, o con código propio, esta funcionalidad permite desde acciones básicas hasta automatizaciones avanzadas para campañas, membresías o adaptaciones por dispositivo.
Los usuarios avanzados pueden aprovechar filtros, roles, cookies, geolocalización o metadatos para crear entornos inteligentes y adaptativos, todo dentro del ecosistema nativo de WordPress.
¿Trabajas en proyectos con Gutenberg? Incorporar controles condicionales te permitirá escalar tu diseño con una lógica robusta sin sacrificar rendimiento.