Tutorial: Adicionar botões de início e encerramento de sessão no menu

  • Autor Autor Voldemorth
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
Voldemorth

Voldemorth

Épsilon
No recomendado
Usuário com poucas negociações! Use sempre o saldo do ForoBeta!
Esta es en realidada la respuesta que di en una comunidad de wordrpess donde consultaban como agregar botones de log in y log out en un menu.

Si queremos agregar un link con para log out podemos hacerlo con un anchor que en su href tenga este codigo:

PHP:
href='<?php echo wp_logout_url( $redirect ); ?> '

Donde $redirect contiene la ruta donde se enviara al usuario luego del log out.

En el caso de el log in es algo parecido solo que en el href pondremos

PHP:
<?php site_url("wp-login.php");  ?>

De mas esta decir que dichos enlaces se podrían alternar por medio de un if evaluando si el usuario esta o no logeado mostrando el indicado en cada caso.

Por otra parte para agregar estas opciones en un menu podemos agregar este codigo en el functions.php de nuestro theme:

PHP:
add_filter( 'wp_nav_menu_items', 'add_loginout_link', 10, 2 );
function add_loginout_link( $items, $args ) {
 if (is_user_logged_in() && $args->theme_location == 'primary') {
 $items .= '<li><a href="'. wp_logout_url() .'">Log Out</a></li>';
 }
 elseif (!is_user_logged_in() && $args->theme_location == 'primary') {
 $items .= '<li><a href="'. site_url('wp-login.php') .'">Log In</a></li>';
 }
 return $items;
}

Teniendo en cuenta que en $args->theme_location == 'primary' se define donde se agregan los items, "primary" es el id del menu y lo pueden cambiar por el que mas les convenga según su theme. Y de mas estad ecir que en el caso de <a href="'. wp_logout_url() .'">Log Out</a> el parametro $redirect que vimos antes es totalmente valido para redirigir al usuario luego de que hace el log out.

Sepan que esta función ya contempla el alternar el boton de log in y de log out segun si el usuario esta o no logeado.
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
Muy bueno, me sirve para un proyecto, gracias por el aporte :encouragement:.
 
muy buen aporte amigo lo tendre muy en cuenta. 🙂
 
Gracias buen aporte 🙂
 
Gracias lo pondre en practica con un sitio que tengo
 
Voltar
Topo