¿Está construyendo un sitio web que requiere que los usuarios inicien sesión para acceder a él? Entonces, es probable que necesite un menú de navegación dinámico que muestre diferentes elementos de menú a los usuarios en función de si han iniciado sesión o no. En este artículo, le mostraremos cómo mostrar menús personalizados a los usuarios que han iniciado sesión.
Instrucciones:
Añade este fragmento de código al archivo de plantilla donde quieras mostrar tu menú de navegación.
<?php if ( is_user_logged_in() ) { wp_nav_menu( array( 'theme_location' => 'logged-in-menu' ) ); } else { wp_nav_menu( array( 'theme_location' => 'logged-out-menu' ) ); } ?>
Nota: Si es la primera vez que añade fragmentos de código en WordPress, consulte nuestra guía sobre cómo copiar / pegar correctamente fragmentos de código en WordPress, para no romper accidentalmente su sitio.
Si le gustó este fragmento de código, por favor considere revisar nuestros otros artículos en el sitio como: Los mejores constructores de páginas de WordPress (Comparados).
How do you add this to a theme? The above code shows nothing in the navigation menu
[…] I’ve been in the process of building an online community for the Utah Grotto of the National Speleological Society and ran into a wall when it comes to creating a different menu for logged in and non logged in users. The primary problem was in the fact that several of the buddypress supported themes only support one menu and you need at least two in order for the is_user_logged_in() function to work properly. So here was the solution I came up with after referencing the following sites: http://wpsnipp.com/index.php/theme/display-different-menus-for-logged-in-users/ and http://smartcoderszone.com/2010/07/how-to-add-multiple-menu-in-wordpress/. […]
AWESOME! Thank you a billion times!
Np Erwin, glad that I could help.
Thank you – I’ll give this a try 🙂
Just found this site and I think it is going to be invaluable to me.
Thank you.
Hi Janice glad to hear you like wpsnipp, hope that you enjoy all the snippets.