SummArg | Cursos y recursos para webmasters

21/10/2013

Crear un menú para usuarios logueados y otro para no logueados

Cuando nuestro sitio tiene un fuerte componente de acciones para los usuarios logueados, ya sea porque tenemos contenidos premium para los usuarios registrados o porque permitimos que dichos usuarios envíen sus contenidos para revisión, entonces resulta útil poder añadir determinados elementos a nuestro menú principal. Necesitamos que los no logueados puedan ver las opciones de “ingresar” y “registrarse”, mientras que los logueados reemplazan esos botones por otros del tipo “escriba su nota”, “cerrar sesión”, etc.

Para ello nos encontramos con un snippet que logra el truco en wpbeginner en pocas líneas. En nuestro functions.php podemos colocar:

function my_wp_nav_menu_args( $args = '' ) {
 if( is_user_logged_in() ) {
 $args['menu'] = 'logged-in';
 } else {
 $args['menu'] = 'logged-out';
 }
 return $args;
 }
 add_filter( 'wp_nav_menu_args', 'my_wp_nav_menu_args' );

Con lo que alteramos el contenido del menú por defecto. Luego en nuestro sitio procedemos a crear los dos menúes que deben llevar por nombre: logged-in y logged-out, con los contenidos que necesitemos.

menu

Dejar un comentario