Menús condicionales sin plugins

En esta ocasión vamos a ver cómo podemos crear menús condicionales sin utilizar plugins. Esta opción nos vendrá muy bien si queremos mostrar distintos ítems de menú dependiendo si el usuario está logueado o no en nuestro sistema.

Consideraciones iniciales: crear los dos menús condicionales

Lógicamente, lo primero que tenemos que hacer es crear los dos menús de navegación, es decir, el menú que mostraremos a nuestros visitantes, y el menú que mostraremos cuando se hayan logueado en el sistema.

Para crear los menús debemos ir al menú Apariencia, Menús. Una vez aquí vamos a crear dos menús: uno llamado Logueado y otro llamado NoLogeado. En estos menús ponemos las opciones que queremos mostrar a los distintos usuarios.

Menú para usuarios no logueados
Menú para usuarios no logueados
Menú para usuarios logueados
Menú para usuarios logueados

Una vez creados los menús, vamos a crear el código para hacer que se muestre uno u otro menú dependiendo de si el usuario que nos visita se ha logueado en el sistema o no.

Código para los menús condicionales

Como siempre, es te código lo podemos pegar en el funcions.php de nuestro tema, pero es aconsejable colocarlo en nuestro plugin de funciones, ya que no queremos perder este código si cambiamos el tema de nuestro WordPress.

Para ello, abrimos nuestro plugin de funciones y añadimos el siguiente código:

/* Menú condicional para usuarios logueados y no logueados */
function my_wp_nav_menu_args( $args = '' ) {
if( is_user_logged_in() ) {
$args['menu'] = 'Logueado';
} else {
$args['menu'] = 'NoLogueado';
}
return $args;
add_filter( 'wp_nav_menu_args', 'my_wp_nav_menu_args' );

Como ves, este código es muy sencillo, simplemente nos dice que si nuestro usuario está logueado (conectado), nos mostrará el menú Logueado, en caso contrario, es decir, que no está logueado, nos mostrará ele menú NoLogueado.

Algo muy importante y que debes tener en cuenta, es que en lugar de Logueado o NoLogueado, debes poner el nombre de tus menús, tal cual los has nombrado al crearlos, no pongas cualquier otro nombre o no funcionará.

Probar que todo funciona correctamente

En este ejemplo es muy sencillo saber si funciona o no. Tan solo he hecho que cuando el usuario se conecta, podrá acceder a la Tienda de la web, en caso contrario, mostraremos la página para que te puedas suscribir (en nuestro ejemplo se llama Suscríbete).

Para probarlo solo tienes que ir a una nueva ventana del navegador, y según si estás logueado en el sistema o no logueado, te saldrá uno de los dos menús que has creado, así de sencillo :-).


¿Qué te ha parecido el artículo?. Házmelo saber en los comentarios que tienes más abajo. Estoy deseando leerte.

Por último, si crees que este artículo puede ser interesante para algún amigo tuyo, te agradecería enormemente que lo compartieras con él y con todo el mundo a través de las Redes Sociales.

Puntúa este artículo:
[Total: 0 - Promedio: 0]

Puede que también te interese...

Deja un comentario

Información básica sobre protección de datos
Responsable: Jose González Bueno.
Finalidad: Moderación y publicación de comentarios.
Destinatarios: No se comunican datos a terceros.
Derechos: Tienes derecho a acceder, rectificar, exportar y suprimir tus datos.

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

He leído y acepto la política de privacidad de este sitio. *