
🔒 Cómo ocultar una entrada o una categoría entera de la página de inicio de WordPress
Un nuevo artículo llegó a la portada y desplazó todo lo demás hacia abajo. Al cabo de un mes tiene tres docenas de publicaciones así, mientras que los artículos que realmente atraen clientes han quedado relegados al cuarto desplazamiento. La tentación de eliminar el exceso es fuerte. No lo haga.
WordPress muestra las últimas entradas en la portada de forma predeterminada. Para un blog esto es normal. Pero si usted gestiona un catálogo, una base de conocimiento o una tienda, cierto contenido debería vivir en un carrusel, en una página de aterrizaje o en un boletín de correo electrónico. No hay razón para duplicarlo en la portada. Dejarlo en borrador significa perder posicionamiento SEO. Eliminarlo es aún peor.
A continuación, cinco maneras de ocultar una entrada o una categoría completa de la portada: desde la privacidad integrada en dos clics hasta un filtro a nivel de base de datos. Elija la que se ajuste a su tarea.
💡 Resumen rápido:
- Ocultar una sola entrada de todos los visitantes: privacidad integrada de WordPress, dos clics en el editor.
- Controlar selectivamente la visibilidad del contenido: el plugin WP Hide Post con ajustes flexibles para la portada, categorías, búsqueda y RSS.
- Eludir el feed de la portada sin plugins: publique la entrada como página y el tema la ignorará.
- Excluir una categoría completa con código: un hook pre_get_posts en functions.php, ocho líneas.
- Hacer lo mismo con casillas de verificación: el plugin Ultimate Category Excluder, cero líneas de código.
Por qué ocultar entradas de la portada
La razón no siempre es «no quiero mostrar esto». Con más frecuencia se trata de la estructura del sitio. Suponga que tiene tres categorías: reseñas de plugins, noticias del sector y artículos de invitados. Las reseñas generan tráfico de búsqueda y merecen estar en primer plano. Las noticias interesan a los suscriptores y tienen más sentido en un carrusel que duplicadas en el feed principal. Las publicaciones de invitados residen en una sección de «Columnas de autores» y en la portada solo generan ruido.
Otro escenario es WooCommerce. Un producto ha sido descatalogado, pero la página con su descripción y reseñas debe seguir siendo accesible mediante enlace directo. Eliminarlo del catálogo destruye el peso SEO acumulado. Ocultarlo del escaparate manteniendo la URL es otra cuestión.
WordPress no ofrece una casilla «no mostrar en la portada» de serie. Pero la tarea tiene solución, desde lo trivial hasta lo completamente automático.
Método 1: Visibilidad integrada, entrada privada
La opción más sencilla. Sin plugins, sin cambios de código. Funciona cuando necesita eliminar una o dos entradas y el acceso público a ellas no es relevante.

Abra la entrada en el editor. A la derecha, en el panel «Publicar», haga clic en el enlace «Visibilidad: Pública». Seleccione Privada. Listo. La entrada desaparece de la portada, de los archivos y de la búsqueda. El enlace directo funciona, pero solo para administradores y editores; los visitantes habituales reciben un error 404.
La desventaja es evidente: el contenido es inaccesible para todos excepto para su equipo. Para borradores cerrados e instrucciones internas esto es ideal. Para material que los clientes deberían ver, no lo es.
Si desea profundizar en el editor de WordPress, desde la publicación básica hasta los ajustes avanzados, WordPress.org dispone de una guía oficial del editor de bloques.
Método 2: Plugin WP Hide Post
Cuando el modo privado no es adecuado y necesita un control de visibilidad selectivo, este plugin cubre prácticamente todos los escenarios.

WP Hide Post es un plugin gratuito de Xfinitysoft. Tras la instalación, cada entrada, página y producto de WooCommerce recibe un metabox «Post Visibility». Dentro hay ocho casillas de verificación: portada, categorías, etiquetas, archivos de autor y fecha, búsqueda, RSS, API REST y widgets.
Marque las que necesite y la entrada desaparecerá de las áreas seleccionadas. El enlace directo sigue funcionando. Sin código. Sin editar plantillas.
Qué más ofrece el plugin:
- Ventajas: soporte inmediato para WooCommerce (oculta productos del escaparate, páginas de categoría y búsqueda de la tienda); oculta archivos multimedia y adjuntos; una columna «Hidden» en el administrador muestra exactamente dónde está oculto cada elemento.
- Desventajas: la versión gratuita no admite edición en lote (solo una entrada a la vez); no redirige las páginas ocultas a 404 (requiere Pro).
- Precio: Gratis; Pro desde $29 al año (Quick Edit, Bulk Edit, 404 Redirect, Hide Everywhere).
Instalación en tres pasos: Plugins → Añadir nuevo, busque «WP Hide Post», instale y active. El metabox de visibilidad aparece en el editor de cada entrada inmediatamente después de la activación.
🔗 WP Hide Post en WordPress.org
Método 3: publicar como página
Una solución alternativa que funciona con la mayoría de los temas. Un tema estándar de WordPress muestra las últimas entradas (post type post) en la portada. Las páginas (post type page) no entran en este flujo; existen por separado.
Cree una página nueva (Páginas → Añadir nueva), redacte su contenido y publíquela. No aparecerá en la portada. No aparecerá en el feed RSS, en los archivos de categorías ni en los resultados de búsqueda, a menos que haya configurado la búsqueda para incluir páginas de forma independiente.
Esta solución es para situaciones en las que el contenido reside en una URL fija dentro de un menú o en una página de aterrizaje y los lectores llegan mediante un enlace directo en lugar del feed del blog. Simple y sin plugins. La desventaja es que las páginas no participan en las taxonomías de entradas: no puede asignarles una etiqueta ni incluirlas en una categoría.
Método 4: excluir una categoría mediante código
Los métodos anteriores funcionan entrada por entrada. Pero si necesita ocultar una categoría entera (por ejemplo, «Noticias del sector» con 40 entradas), marcar casillas manualmente se vuelve una tortura. Aquí ayuda el filtrado a nivel de consulta en WordPress.
Primero, localice el ID de la categoría. Vaya a Entradas → Categorías, abra la que necesite y mire la barra de direcciones del navegador: el parámetro tag_ID=55 es el ID. Anote el número.
Ahora añada el siguiente código al functions.php de su tema activo (preferiblemente un tema hijo):
1 function exclude_category_from_home($query) { 2 if ( $query->is_home() && $query->is_main_query() ) { 3 $query->set( 'cat', '-55' ); 4 } 5 return $query; 6 } 7 add_filter( 'pre_get_posts', 'exclude_category_from_home' );
Sustituya 55 por el ID de su categoría. El signo menos delante del número significa «excluir».
Qué sucede aquí: la función comprueba que estamos en la portada (is_home) y que esta es la consulta principal (is_main_query) para no afectar a los widgets de la barra lateral ni a los bucles anidados. Luego añade el parámetro cat con un signo menos, la sintaxis estándar de WP_Query para excluir una categoría. WordPress ni siquiera recupera de la base de datos las entradas de la categoría excluida; no se limita a ocultarlas en la plantilla. Rápido, limpio, sin consultas adicionales.
Tras guardar el archivo, todas las entradas de la categoría seleccionada desaparecen de la portada. Para recuperarlas, elimine este bloque de functions.php.
Si necesita excluir varias categorías, enumere los ID separados por comas: 'cat' => '-12,-34,-56'.
Método 5: plugin Ultimate Category Excluder
Para quienes no quieran tocar código, un plugin que hace exactamente lo mismo desde el panel de administración.

Ultimate Category Excluder es un plugin gratuito con más de 50.000 instalaciones activas y una valoración de 4,2 en WordPress.org. Tras la activación, vaya a Ajustes → Category Exclusion y marque las categorías que desea excluir. Cuatro columnas: Front Page, Archives, Feeds, Search. Minimalista. Esto basta para el 90% de las tareas.
- Ventajas: cero código; exclusión de cuatro áreas con un solo clic; funciona con las categorías nativas de WordPress.
- Desventajas: no funciona con taxonomías de WooCommerce ni con tipos de contenido personalizados; algunos usuarios reportan un conflicto con Elementor donde el plugin restablece la plantilla de página a «Elementor Canvas» (se soluciona volviendo a «Elementor Full Width»).
- Precio: Gratis.
El plugin no se actualiza desde diciembre de 2025, pero se ha probado hasta WordPress 6.9 y sigue siendo estable para el escenario básico de excluir una categoría de la portada. Si las actualizaciones periódicas son críticas para usted, use el método 4 (las mismas 8 líneas de código sin dependencias externas).
🔗 Ultimate Category Excluder en WordPress.org
Un breve vídeo sobre el tema (en inglés, pero todas las acciones se muestran paso a paso):
⁉️🤔 Preguntas frecuentes
¿Puedo ocultar una entrada de la portada pero mantenerla en la búsqueda?
Sí. El plugin WP Hide Post le permite marcar «Ocultar de la portada» y dejar sin marcar «Ocultar de los resultados de búsqueda». La entrada estará disponible mediante búsqueda y a través del enlace directo, pero no aparecerá en el feed de la portada. La privacidad integrada no puede hacer esto: oculta la entrada por completo, incluso de la búsqueda y del acceso directo. Para un control flexible, use el plugin.
¿Qué ocurre con la indexación SEO de las entradas ocultas?
Si una entrada se oculta mediante un plugin (WP Hide Post o Ultimate Category Excluder), el enlace directo sigue funcionando. Google puede indexarla; la exclusión del feed de la portada no afecta a la indexación. Las entradas privadas de WordPress no se indexan: el servidor devuelve un 404 para los visitantes no autorizados. Esta es la opción correcta si el contenido no debe aparecer en absoluto en los resultados de búsqueda.
¿Puedo ocultar entradas de varias categorías a la vez?
Sí. En código, liste los IDs separados por comas con un signo menos:
'cat' => '-12,-34,-56'. En Ultimate Category Excluder, simplemente marque todas las categorías que necesite en la página de ajustes. Una limitación:pre_get_postsconcatexcluye categorías, pero no funciona con taxonomías personalizadas. Para esas, use el parámetrotax_query.
¿El plugin WP Hide Post ralentiza el sitio?
No. El plugin utiliza su propia tabla de base de datos en caché; la caja meta no añade consultas a
wp_postmeta. En el front-end, el impacto en la velocidad es insignificante. Según el desarrollador (Xfinitysoft), la sobrecarga es inferior a 5 ms por página en una configuración típica.
¿Qué es mejor para excluir categorías: código o un plugin?
Depende de qué tan cómodo se sienta con PHP. La función
pre_get_postsdel método 4 son 8 líneas sin dependencias externas ni actualizaciones. El plugin Ultimate Category Excluder son cero líneas de código, pero añade otro plugin a su administración. En la práctica: si está excluyendo una o dos categorías y no planea cambiar las reglas a menudo, el código es más simple y ligero. Si tiene muchas categorías y las reglas cambian con frecuencia, el plugin es más conveniente.
Qué método elegir para su tarea
Una matriz rápida para que no tenga que releer todo el artículo en su próxima visita:
- Una entrada, solo para el equipo editorial → Visibilidad privada (método 1). Cero plugins, dos clics.
- Una entrada, los clientes deben verla mediante enlace → WP Hide Post (método 2). Tan flexible como es posible, funciona con WooCommerce.
- Contenido no para el blog, sino para un menú o página de aterrizaje → Publíquelo como página (método 3). El tema no lo notará.
- Una categoría entera, se siente cómodo con PHP →
pre_get_postsenfunctions.php(método 4). Ocho líneas, sin plugins. - Una categoría entera, no quiere tocar código → Ultimate Category Excluder (método 5). Casillas de verificación, y listo.
Si oculta y restaura entradas con regularidad, empiece con WP Hide Post. La versión gratuita es suficiente para la portada, categorías, búsqueda y RSS. La versión Pro resulta útil cuando tiene alrededor de un centenar de entradas y necesita edición masiva.
Configúrelo una vez y olvídese. WordPress hace el resto.



