Categorias: CSS | PHP | Plugins

Mostrar foto e nome do usuário quando logado

Escrito por Amanda de Lavra

15 de outubro de 2021

O cliente gostaria que, quando um usuário estivesse logado, aparecesse sua foto e nome no cabeçalho. Pesquisei diversas maneiras de fazer isso e optei por criar um shortcode para depois acrescentar no cabeçalho.

O código ficou assim:

//Retornar foto e nome de usuário
function give_profile_name($atts){
  
  if (is_user_logged_in()) {

    $user = wp_get_current_user();
    $id = $user->ID;
    $name = $user->user_firstname;
    $login = $user->user_login;

    if ($name == '') {
      $name = $login;
    }

    $avatar = get_avatar( $id, 24 );
    $usuario = $avatar . $name;
  
  } else {
    
    $usuario = '<img src="https://petrata.com.br/wp-content/uploads/icone-pessoa.png">';
  
  }

  return $usuario;

}
add_shortcode('profile_name', 'give_profile_name');

Dessa forma acrescentei o shortcode [profile_name] ao cabeçalho. Adicionei a classe nome-usuario ao módulo de código e estilizei com o seguinte:

/**Cabeçalho - Usuário**/
.nome-usuario {
    font-family: 'Montserrat',Helvetica,Arial,Lucida,sans-serif;
    color: #AC3400;
}

.nome-usuario .et_pb_code_inner {
    display: flex !important;
}

.nome-usuario img {
    border-radius: 100%;
    margin: 0 5px 0 15px;
}

Além disso, instalei um plugin para que os clientes WooCommerce possam acrescentar uma foto ao seu perfil. Achei um plugin neste endereço: https://webfor99.com/woocommerce-custom-profile-picture-avatar-plugin/. Ele permite adicionar a foto no painel da conta WooCommerce.

Posts relacionados

Customizações da página de login e painel administrativo do WordPress

Customizações da página de login e painel administrativo do WordPress

Para todo o site que eu faço, personalizo a página de login e também o wp-admin para ficar com a marca do cliente. Recentemente, aperfeiçoei o código para que o login ficasse no meio da página, tanto verticalmente quanto horizontalmente. Segue código usado aqui neste...

Aviso de Coming Soon quando não há posts no Blog no Elementor

Aviso de Coming Soon quando não há posts no Blog no Elementor

O cliente queria um blog no site, mas não tinha nenhum conteúdo ainda para publicar, por isso, pediu para que aparecesse Coming Soon! no lugar dos posts. O módulo Posts do Elementor não dá a opção de personalizar a mensagem quando não há posts na query. Simplesmente...

Remover Post Type Projects

Remover Post Type Projects

Eu estava fazendo um site que usaria o tipo de post nativo do Divi que é o Projeto, mas depois a agência mudou de ideia e achei melhor retirar completamente o post type do site. Achei um tutorial em:...