Como ocultar páginas en Wordpress
Quizás te hayas fijado que hay alguna página en el blog que no aparece en el listado superior, como la de usuarios activos, y esto se puede conseguir de dos maneras que paso a explicarte.
La primera y mas sencilla pasa por instalar un plugin para Wordpress llamado Link Manager. Una vez activado te ofrece dos entornos donde definir que páginas quieres que sean visibles en la barra de navegación de páginas estáticas. La página de opciones del plugin …

Y el otro lugar es en la ventana del editor de páginas, con una casilla que te permite, a la hora de crearla, decidir si será visible o no …

Si lo deseas puedes descargar aquí mismo el plugin traducido al español:
Gestor de enlaces a páginas (2.5 KiB, 463 descargas)
La segunda, igual de sencilla pero que requiere que modifiques tu plantilla pasa por lo siguiente:
Abre el fichero header.php de tu plantilla, que estará situado en tublog.com/wp-content/themes/tuplantilla/header.php y encontrarás una línea de código similar a esta …
-
<?php wp_list_pages('sort_column=menu_order&depth=1&title_li=');?>
Lo que tienes que hacer es incluir una función de exclusión para que no muestre la página que quieras ocultar. Sería algo así …
-
<?php wp_list_pages('depth=1&sort_column=menu_order&exclude=12&title_li=’ . __(”) . ” ); ?>
Donde "12" es el ID de la página a excluir. Además, puedes llevar mas allá este truco excluyendo mas páginas de este modo …
-
<?php wp_list_pages('depth=1&sort_column=menu_order&exclude=12,22&title_li=’ . __(”) . ” ); ?>
Consiguiendo de este modo excluir de la navegación, separándolas con comas, las páginas con los ID 12 y 22.
Si se te ocurre otro método no dejes de comentarlo aquí mismo o en este hilo del foro.

RSS








Excelente, estaba esperando un plugin hace rato pues recurría originalmente a la edición del header.php
Gracias nuevamente Fernando
Como una salvedad para aquellos que no encuentran las opciones para este plugin: se encuentran en Administración> Enlace a página y no en la página de Opciones o de Plugin
Ah, gracias, lo uso hace tanto tiempo que no fuí explícito en ese punto
increible,muxas gracias ,porque no me funcionaba cambiando wp_list_pages, lo hacia en la cabezera y en el side, se agradece
como puedo hacer para que algunas paginas solo esten visibles para usuarios registrados en el blog? Es decir, que si estas registrado y logeado te salga en el menu superior, y si no, no aparezca.
gracias!
David, para eso tienes que marcarlas como Privadas en la ventana del editor de WordPress, incluso puedes tenerlas visibles pero que te pida contraseña para acceder. Para blogs corporativos es muy interesante
pues es que no lo entiendo, porque no me funciona :-(, si las pongo como privadas no las veo ni siquiera cuando estoy como admin…
¡Que raro!, yo tengo alguna privada en mi blog personal y solo las ven los registrados
No se que decirte la verdad, tendría que ver como lo has hecho para valorarlo. Si te apetece pásate por el foro y lo vemos ahí.
¡Muchas gracias! Me ha venido de perlas el plugin
Hola, quisiera saber si se puede realizar esto mismo con las categorias, se pueden ocultar las categorias, funciona con alguno de los metodos que expones aqui?
Hugor-R ¿como quieres hacerlo?. Quieres que no se muestren posts de una categoría concreta o que no se listen en el widget o que??
Si te refieres al listado de categorías si que vale, con exclude te sirve:
< ?php wp_list_categories('orderby=name&show_count=1&exclude=10'); ?>
Donde 10 sería el ID de categoría
Gracias Fernando, lo que queria era que varias categorias NO se listaran en el widget, con el exclude me ha funcionado bien. Gracias
Ah, claro, es que los widgets son un engorro, lo mejor es prescindir de ellos en cuando se pueda y usar los códigos en el sidebar, te dan mucha mas flexibilidad y consigues lo mismo
Me alegro que te sirviera
no logro esconder una categoria de la lista (en el widget) donde tendria q poner ese codigo?? .. quiero q se listen todas menos una!! saludos
solucionado le agregue el exclude a : $cat_args = “orderby=name&show_count={$c}&hierarchical={$h}&exclude=123′”;