O que você está procurando?

Aperte Enter para buscar ou ESC para fechar

Como mostrar o perfil do autor no post e configurar o arquivo author.php

3 min de leitura

Neste post irei mostrar como exibir informações do autor do post, como mostra a imagem abaixo e como configurar o arquivo author.php que exibe as informações dos autores do blog/site.

Parte I – Arquivo single.php

Primeiro, vamos criar a área na parte inferior de cada post. Estou alterando o tema default, mas sinta-se livre para usá-lo em seus próprios temas. Abra o single.php e encontre a função the_content() e insira:

<div>
<?php echo get_avatar (get_the_author_id() , 80 ); ?>

Na segunda linha, temos obtido o Gravatar do autor usando seu ID. E depois definindo a dimensão 80 × 80 pixel do Gravatar. Na sequência:

<h4> Autor: <a href = "<? php the_author_url ();?>">
<?php the_author_firstname(); ?> <?php the_author_lastname(); ?></a></h4>
<? php the_author_description ();?>

Isto irá exibir o primeiro e último nome do autor, com um link para seu site. Abaixo disso é a sua mini-biografia. Todos estes detalhes estão sendo puxado pelo perfil do autor no Dashboard.

<p><a href="<?php bloginfo ( 'url');?>/?author=<?php the_author_ID ();?>"> Ver perfil</a></p>
</div>

Isto faz o link para o página do autor (o que vamos criar em seguida).

Parte II – Arquivo author.php

Crie um arquivo chamado author.php na pasta do seu tema. O WordPress irá automaticamente utilizar este arquivo para visualizar o perfil do autor. Sem esse arquivo, o WordPress iria usar o arquivo archive.php. No início nós incluímos o layout básico para o cabeçalho do tema default. Isto provavelmente será diferente se você estiver usando um tema diferente.

<?php get_header(); ?><div id="content">

Agora, incluir o seguinte:

<?php
if(get_query_var('author_name')):
$curauth = get_userdatabylogin (get_query_var('author_name'));
else:
$curauth = get_userdata(get_query_var('author'));
endif;
?>

Sobre a única página, fomos capazes de obter as informações diretamente do autor a partir do WordPress loop. No entanto, uma vez que não está a obtenção de um determinado post ainda, funções do loop não vão funcionar. O código acima irá obter informações para nós e armazená-los em um array.

<div>
<?php echo get_avatar( $curauth->ID , 80 ); ?>

Como você pode ver, na linha 2, incluímos o Gravatar novamente, mas desta vez estamos usando o nosso novo método para obter o ID do autor.

<h4><a href="<?php echo $curauth->user_url; ?>">
<?php echo $curauth->first_name; ?> <?php echo $curauth->last_name; ?></a></h4>

O nome do autor e um link para seu site está incluído; novamente usando o novo método de recuperação.

<p><?php echo $curauth->description; ?></p>
</div>

Finalmente, nós incluímos a mini-biografia do autor. Você pode incluir qualquer detalhe do autor aqui:

  • $curauth->aim;
  • $curauth->description;
  • $curauth->display_name;
  • $curauth->first_name;
  • $curauth->ID;
  • $curauth->jabber;
  • $curauth->last_name;
  • $curauth->nickname;
  • $curauth->user_email;
  • $curauth->user_login;
  • $curauth->user_nicename;
  • $curauth->user_registered;
  • $curauth->user_url;
  • $curauth->yim;

(Leia Mais: WordPress Codex)
Agora você pode inclui um  WordPress Loop normal, exibindo o post como se você necessitar.  Apenas as postagens do autor serão recuperadas. Exemplo:

<div>
<h4><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h4>
<hr />
</div>

Parte III – Estilizando

Inclua o seguinte código na parte inferior do seu arquivo style.css, faça seus ajustes se necessários:

.postauthor {
    background-color: #fafafa;
    border: 1px solid #f3f3f3;
    padding: 10px;
    margin: 10px 0;
    }

.postauthor h4 {
    font-size: 1.2em;
    margin: 0 0 10px 0;
    }

.postauthor img {
    float: left;
    margin: 0 15px 8px 0;
    }

Artigo Traduzido do site: https://blog.themeforest.net/wordpress/wordpress-author-details/ – com adaptações

Compartilhar este artigo
Guga Alves

Guga Alves

• WordPress e web

Desbravando o mundo WordPress desde 2007, me especializei também em SEO e entreguei grandes projetos no mercado brasileiro para a partir de 2015 me dedicar ao mercado fora do Brasil. Trabalhei na empresa do criador do WordPress por 4 anos (no WordPress.com, da Automattic) e mais 4 anos em uma das maiores empresas de hospedagens do mundo, a Liquid Web, gerenciando uma equipe de suporte do plugin The Events Calendar. No Brasil, atendi grandes marcas como canal Futura, Corpo Perfeito, Catraca Livre, Hostgator Brasil e Hostnet, também palestrei em diversos eventos e dei aula em cursos livres e pós-graduação (no Rio de Janeiro e em Brasília). Trabalho remoto, viajo bastante, mas minha base é no Rio de Janeiro/RJ.

X GitHub Sobre mim
Leituras Complementares

Continue lendo

Ver todos em Dicas WordPress →

Discussão & Respostas (11)

Espaço moderado para debates técnicos
  1. Iceman
    Iceman
    ↳ Responder

    Ae, post antigo mas ajudou, ja que sou iniciante em WordPress. Valeu! 🙂

  2. Fabrício
    Fabrício
    ↳ Responder

    Olá amigo, você poderia me informar se existe algum plugin que configura uma certa quantidade de postagens (mensal por exemplo) para cada autor?
    Se caso exista por favor me informe, agradeço desde já.

  3. Fabrício
    Fabrício
    ↳ Responder

    Olá Marcelo, dei uma olhada nesse plugin mais ele não faz exatamente o que eu quero, pois ele apenas configura  quantos post queremos que fique vizivel na página, sendo para os usuários ou não.

    O que eu busco vai além, tipo um plugin que configure uma quantidade exata (mensalmente) para cada usuário de postagens, ou seja, se eu definir 10 post para cada autor, se caso ele tente postar na 11º vez o conteúdo fica pendente ou simplesmente não entra no blog.
     
    Muito obrigado pelo retorno, esse plugin que você me indicou não conhecia ainda, e me parece ser bem útil. flw!

  4. Tiago Ramos
    Tiago Ramos
    ↳ Responder

    Marcelo, ou quem souber sobre a questão, eu queria saber se há um código para que eu possa exibir, nessas mesmas condições, a função do autor (user_role)? já tentei alguns e nenhum retornou o esperado. Grato.

  5. Gustavo
    Gustavo
    ↳ Responder

    Não estou conseguindo ativar o CSS. Coloco os códigos mas o estilo fica desconfigurado.
     
    Ajuda?

  6. Marcelo Torres
    ↳ Responder

    Olá Gustavo, é que eu esqueci de acrencentar a div a class="postauthor", acrencente no seu codigo que dará certo. Por exemplo, em:
    <div>
    <h4><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h4>
    <hr />
    </div>

    coloque:

    <div class="postauthor">
    <h4><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h4>
    <hr />
    </div>

  7. Gabriela
    Gabriela
    ↳ Responder

    Não funcionou comigo ): Deu syntax error no single.php

  8. Carlos Silva
    Carlos Silva
    ↳ Responder

    Vlw, me serviu perfeitamente.

Deixe sua contribuição técnica

Seu e-mail não será publicado. Blocos de código em markdown são aceitos com crases triplas.