Casi todos los temas de WordPress muestran los mismos menús para todos los usuarios del sitio web sin distinción. Esto es lo normal, pero en algunos casos quieres mostrar para cada tipo de usuario un menú diferente al del otro, para ofrecer más acceso a usuarios registrados que a los visitantes, o mostrar un enlace de registro a visitantes. Hoy te enseñaremos cómo mostrar menús diferentes en WordPress para usuarios y visitantes.
Menús Diferentes en WordPress
WordPress tiene un sistema de menú estándar, y no permite la división del contenido según cada tipo de consumidor o usuario desde el asistente. Este código te permite mostrar el primer menú no vacío creado en tu sitio web.
<?php wp_nav_menu(); ?>
Pero puedes personalizar la apariencia y visibilidad del menú mediante un código, permitiendo el acceso a los visitantes a un menú completamente distinto al que sale a los usuarios que han iniciado sesión. Para hacer esto, usaremos una condicional:
if ( is_user_logged_in() ) { wp_nav_menu( array( 'theme_location' => 'menu-usuario' ) ); } else { wp_nav_menu( array( 'theme_location' => 'menu-visitante' ) ); }
Con este sencillo código se muestran menús diferentes en WordPress, uno para los visitantes, y otro para los usuarios. Para que este código tenga efectividad, debes crear menús con los nombres que quieres y especificarlo en el código como valor de theme_location
en tu página.
Si no estás acostumbrado a modificar archivos en WordPress, te invitamos a leer nuestro artículo de cómo editar archivos en WordPress de forma correcta.
Para ello debes haber ya registrado cada menú con la función register_nav_menu() en el archivo de functions.php en tu tema activo.
De esta forma terminas de configurar tu código en la página que deseas para mostrar dos menús diferentes en WordPress. Esperamos que este código te ayude, si te quedan preguntas ponlas en la página de WPbody en facebook.