Una página de inicio o un archivo de blog desordenados pueden abrumar a los visitantes. Mostrar todas y cada una de las entradas no siempre es lo ideal, sobre todo si tienes anuncios, páginas de aterrizaje u otros contenidos no destinados a la navegación general.
Existe la opción de hacer que las entradas de WordPress estén protegidas por contraseña o sean privadas. Sin embargo, en algunos casos, nos parece que es mejor simplemente ocultar el post de su página de inicio al tiempo que permite a otros para verlo si tienen el enlace directo.
En este artículo, le mostraremos cómo ocultar las entradas de las páginas seleccionadas en WordPress, como la página de inicio, los archivos de categorías, los resultados de búsqueda, etc.
Revisaremos dos métodos diferentes para ocultar publicaciones de la página de inicio. Puede utilizar los enlaces rápidos a continuación para saltar directamente al método que desea utilizar:
Método 1. Ocultar una entrada de WordPress desde la página de inicio usando un plugin
Este método es más sencillo y se recomienda a los principiantes.
Lo primero que tienes que hacer es instalar y activar el plugin WordPress Hide Posts. Para más detalles, consulta nuestra guía paso a paso sobre cómo instalar un plugin de WordPress.
Una vez activado el plugin, sigue adelante y edita la entrada que quieres ocultar. Notarás una nueva sección ‘Ocultar entradas’ en la columna derecha del editor.
Al hacer clic en él, aparecerán las opciones del plugin. Puedes ocultar la entrada en la portada y en la página del blog, en las páginas de categorías o etiquetas, en la página del autor y en los resultados de búsqueda del sitio.
Sólo tienes que seleccionar las opciones que más te gusten y guardar tu entrada.
Dependiendo de las opciones que haya seleccionado, ahora puede visitar esas páginas y esa entrada en particular no aparecerá en el catálogo.
Todos los usuarios que tengan la URL directa de la entrada (permalink) pueden seguir viéndola introduciendo la URL.
Aunque este método es el más sencillo, carece de varias opciones potentes.
Por ejemplo, no puede ocultar una página o un tipo de contenido personalizado como los productos de WooCommerce. Tampoco tiene una opción para ocultar una entrada de WordPress RSS feed.
Método 2. Ocultar manualmente entradas y páginas de WordPress
Este método requiere que añadas código a tu sitio WordPress. Si no lo has hecho antes, consulta nuestra guía sobre cómo copiar y pegar fragmentos de código en WordPress.
WordPress utiliza una consulta a la base de datos para obtener y mostrar entradas en función de la página que está viendo el usuario. También proporciona ganchos integrados para modificar la consulta antes de ejecutarla.
Utilizaremos esos ganchos para modificar la consulta de WordPress y ocultar las entradas, páginas y tipos de entradas personalizadas de WordPress en diferentes secciones.
Puedes añadir código personalizado utilizando un plugin de fragmentos de código, que es la opción más segura y no rompe tu sitio. Alternativamente, puedes añadir el código personalizado al archivo functions. php de tu tema o a un plugin específico del sitio.
También necesitará los IDs de las entradas o páginas que desea ocultar. Tenemos una guía práctica sobre cómo encontrar el ID de una entrada en WordPress que muestra cómo obtener esta información.
Básicamente, puedes editar una entrada o página para ver su ID en la barra de direcciones de tu navegador / explorador.
Dicho esto, pasemos a la parte del código.
Ocultar entradas o páginas de inicio de WordPress
El siguiente código utiliza la etiqueta condicional is_home() para averiguar si el usuario está viendo la página de inicio. En caso afirmativo, excluye los ID de las entradas de la consulta.
function wpb_exclude_from_home($query) {
if ($query->is_home() ) {
$query->set('post__not_in', array(1737, 1718));
}
}
add_action('pre_get_posts', 'wpb_exclude_from_home');
No olvide sustituir los IDs dentro del array por los IDs reales de las entradas o páginas que desea excluir.
De nuevo, recomendamos usar un plugin de fragmentos de código como WPCode para añadir este código en WordPress de forma fácil y segura.
Para empezar, tendrás que instalar y activar el plugin gratuito WPCode. Para obtener instrucciones, consulte esta guía sobre cómo instalar un plugin de WordPress.
Una vez activado el plugin, haga clic en el elemento de menú Fragmentos de código del panel de control de WordPress. A continuación, haz clic en el botón “Añadir nuevo”.
A continuación, busque la opción “Añadir su código personalizado (nuevo fragmento)” y haga clic en el botón “Usar fragmento” situado debajo.
A partir de ahí, es necesario seleccionar ‘PHP Snippet’ como el tipo de código.
Ahora accederás a la página “Crear fragmento personalizado”. Puedes empezar añadiendo un título para tu fragmento. Puede ser cualquier cosa que te ayude a recordar para qué sirve el código.
A continuación, sólo tiene que pegar el código anterior en el cuadro “Vista previa del código”.
A continuación, cambie el conmutador de “Inactivo” a “Activo” y haga clic en el botón “Guardar fragmento de código”.
A continuación, le mostraremos algunas opciones adicionales para ocultar entradas o páginas de WordPress. Puedes seguir los mismos pasos que arriba para añadir estos fragmentos de código en WordPress usando WPCode.
Ocultar entradas de WordPress o páginas de feed RSS
Si desea ocultar una entrada de WordPress de la página de inicio, así como el feed RSS de WordPress, entonces usted puede simplemente utilizar la etiqueta condicional is_feed en el código.
function wpb_exclude_from_feed($query) {
if ($query->is_feed() ) {
$query->set('post__not_in', array(1737, 1718));
}
}
add_action('pre_get_posts', 'wpb_exclude_from_feed');
Ahora, si ha iniciado sesión como administrador y ha intentado visitar su feed RSS de WordPress, seguirá viendo las entradas allí listadas. Otros usuarios no podrán ver las entradas excluidas cuando vean tu feed RSS.
Ocultar entradas o páginas de WordPress de la búsqueda del sitio
¿Qué pasa si quieres ocultar entradas específicas de la búsqueda del sitio de WordPress? Para ello, basta con añadir la etiqueta condicional is_search al código.
function wpb_exclude_from_search($query) {
if ( $query->is_search() ) {
$query->set('post__not_in', array(1737, 1718));
}
}
add_action('pre_get_posts', 'wpb_exclude_from_search');
Ahora puedes visitar tu sitio web y buscar las entradas que querías ocultar. Aunque estas entradas sean públicas, no aparecerán en los resultados de búsqueda.
Ocultar entradas o páginas de los archivos de WordPress
¿Qué tal ocultar entradas o páginas específicas de WordPress de páginas de archivo como los archivos de categorías, etiquetas y fechas? Para ello, utilizaremos la etiqueta condicional is_archive().
function wpb_exclude_from_archives($query) {
if ( $query->is_archive() ) {
$query->set('post__not_in', array(1737, 1718));
}
}
add_action('pre_get_posts', 'wpb_exclude_from_archives');
Ocultar entradas o páginas de WordPress desde cualquier lugar
Hasta ahora, hemos aprendido cómo ocultar una entrada o página de WordPress de áreas específicas. Ahora, ¿qué pasa con ocultar completamente un post de WordPress de todas estas áreas a la vez?
Para ello, puede combinar todas las etiquetas condicionales que hemos utilizado anteriormente en un único fragmento de código.
function wpb_exclude_from_everywhere($query) {
if ( $query->is_home() || $query->is_feed() || $query->is_search() || $query->is_archive() ) {
$query->set('post__not_in', array(1737, 1718));
}
}
add_action('pre_get_posts', 'wpb_exclude_from_everywhere');
Este código ocultará las entradas dadas de la página de inicio, el feed RSS, los resultados de búsqueda y las páginas de archivo.
Control de la visibilidad del contenido en WordPress
Puede ocultar entradas o páginas de WordPress utilizando los dos métodos que hemos descrito anteriormente. Pero, antes de irte, también responderemos a algunas de las preguntas más frecuentes sobre las opciones de control de visibilidad del contenido en WordPress.
¿Ocultan perfectamente estos métodos el contenido?
No, no lo hacen.
Por ejemplo, es posible que los motores de búsqueda ya hayan rastreado e indexado la entrada antes de que puedas ocultarla. Si desea evitar que los motores de búsqueda, a continuación, consulte nuestra guía sobre cómo ocultar una página de WordPress de Google.
Esto tampoco funcionará si un plugin de WordPress utiliza una consulta personalizada que omite sus comprobaciones y revela el contenido que está intentando ocultar.
Sería mejor proteger una entrada con contraseña para que solo los usuarios que la tengan puedan verla.
También puede crear una entrada privada que solo sea visible para los administradores, editores y autores de su sitio web.
¿Puedo utilizar estos métodos para crear contenidos para usuarios específicos?
No, estos métodos no le permiten compartir contenidos de forma eficiente con usuarios específicos. Un mejor enfoque sería utilizar un plugin de membresía de WordPress.
Los plugins de membresía como MemberPress te permiten crear y publicar contenido restringido. Incluso puedes vender planes de suscripción para acceder a contenidos premium.
Para más detalles, consulte nuestra guía sobre cómo crear un sitio web de membresía en WordPress con instrucciones paso a paso.
Esperamos que este artículo te haya ayudado a aprender cómo ocultar una entrada de WordPress de la página de inicio y otras áreas de tu sitio web. Puede que también quieras ver nuestra guía sobre cómo hacer que un sitio WordPress sea completamente privado o nuestras selecciones de expertos de los mejores plugins de entradas populares para WordPress.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Jiří Vaněk
Thanks for the plugin tip. I personally use the Category Excluder plugin, but it removes the entire category from the homepage, and that doesn’t always work for me. I will try your plugin so that I don’t always have to select the whole category but only an individual article. That suits me much better.
Amit
Hiding a post with this plugin, does it prevent search engine from crawling and indexing the post? Does it prevent the post’s google search?? Please let me know.
WPBeginner Support
No, it would not, this would be for excluding the post from your home page, not preventing it from being crawled.
Administrador
Najeeb Mirani
Very helpful, thank you!
WPBeginner Support
You’re welcome
Administrador
Rakesh
Is there any way to hide specific post from only home page latest post section but not from sidebar recent post widget?
WPBeginner Support
It sounds like you would want to use the plugin method from the article.
Administrador
Dale
This plugin no longer works. I have been searching for an alternative but haven’t found one yet. Would love an update to this post.
WPBeginner Support
Thank you for letting us know, we will certainly take a look at this plugin and update this article.
Administrador
Gino
Plugin no longer works for recent and latest Wordpress updates. Time to update this article!
WPBeginner Support
Thank you for letting us know, we will be sure to take a look into alternatives.
Administrador
Sheila
I would be interested in an alternative too. This plug in sounded like exactly what I needed.
Kelsey
I would just use the PHP snippet mentioned above and post it in your child theme functions.php file. That’s what I did to hide my post.
Daniel
My only gripe is that the category post count in my category menu is incremented, even though the post can’t be shown this way. . Other than that, it is perfect.
Adri
Very helpful, thank you!
Dada
Hi, is google still can index the hidden post? Because i still want people can search my post on google search but not show on frontpage?
Raj
how to remove page 1 2 3 4 5 6 7…………last from homepage
campbell
Hi, I am wanting to keep my blog posts visible on my blog page but hidden/removed on my homepage. I downloaded the plugin and followed the instructions. When I checked “hide from front page” my blog post was removed from my blog page and not the homepage, so the opposite of what I want. How can I achieve this? Thanks!
ted bergman
Thank you for this incredibly valuable site! When I need to know how to do something in Word Press, I first come here. You usually have the best and easiest to understand answer.
Gregory
Works just like the tutorial says. WP 4.8
Jason
The issue with the plugin is that if you want to have a category page show posts, then you have to leave that unchecked and “recent posts” will then pick it up and show up in all your side bars and footers
Munna Hossain
This is really a great plugin. It works for me. But I don’t know why the authority doesn’t update this plugin. It still working properly.
Thanks for your excellent artcle.
coated pill
Is there another way to hide particular post since this is not working in my end .
A simple tutorial might help too if I need to alter on some codes on the themes .
Thanks
Mario von Gollaz
The thing is that there is no real alternative to WP Hide Post. Or is there an alternative? Also WP Hide Post seems to be quite outdated (not updated since quite a while).
Shakir Hassan
Hi,
I’ve hide one of my blog posts from my Homepage, but still, it’s showing on Related Post section area below other blog posts.
What should I do to get rid of it?
WPBeginner, your answer is needed.
Thanks.
Scott
Another option isn’t too hide it per se but to re-schedule it to publish on a later date. I think that will effectively do the same thing…at least it did on my site just now.
Allie Mackin
I did what Scott suggested rescheduled the post for a later date. I went through the trouble of downloading and installing this app and it did not work. When I all I had to do is reschedule for a future date. Mission accomplished sans app.
Roshan Roy
how to filter those posts which was hide by WP HIDE POST plugin in admin panel.
Stephen Walker
Comment by:
Just the answer I had been looking for.
Thank You wpBeginners
Dawn Cunnane
I really needed this to hide one post from the categories menu and it worked like a charm, thank you!
TW
This plugin has not been updated in 2 years. Surprised you are recommending it.
Arevico
This is a perfect example of something I would rather have in the WordPress core than in the plugin domain. Normally, I develop my own themes and solve this by using categories. f.e how shows only most recents posts in the category ‘home’ or not in the category ‘invisible’ ,etc. This plugin help a great deal when you don’t develop your own the,e
Brian Jackson
I agree Arevico. This should definitely be part of WordPress core by now. An example just this week… I run a marketing blog, but I am doing a review on a standing desk. Since it is a little outside of my niche of readers I am publishing it without having it show up on the homepage. I want to rank for it, but don’t want to lose readers.