Se você gerencia um blog com vários autores, como o nosso, sabe a importância de destacar o trabalho de cada escritor de forma eficaz.
Uma maneira que descobrimos para fazer isso é exibindo posts relacionados do mesmo autor no final de cada artigo. Essa abordagem não só ajuda os leitores a encontrar mais do que eles gostam, mas também dá a cada autor mais visibilidade em seu site.
Neste artigo, mostraremos como exibir posts relacionados do mesmo autor no WordPress.

Por que exibir posts relacionados por autor no WordPress?
Ao adicionar posts relacionados no WordPress, você pode ajudar os visitantes a encontrar novo conteúdo, mantê-los engajados e aumentar as visualizações de página enquanto reduz a taxa de rejeição.
No entanto, se você gerencia um blog WordPress com vários autores, os visitantes podem querer ler mais posts de um autor específico. Se você mostrar posts escritos pelo mesmo autor, pode manter os visitantes em seu site por mais tempo e melhorar a experiência do leitor.

Dito isso, vamos ver como você pode exibir posts relacionados do mesmo autor no WordPress.
Exibindo posts do mesmo autor no WordPress (Método Fácil)
A maneira mais fácil de mostrar uma lista de posts relacionados do mesmo autor é adicionando código personalizado ao seu site WordPress. Tentamos encontrar plugins para esse fim, mas os que encontramos estão muito desatualizados.
Às vezes, guias recomendam adicionar código personalizado editando o arquivo functions.php do seu site. No entanto, não recomendamos este método, pois mesmo um pequeno erro ou digitação no código pode causar erros comuns do WordPress ou até mesmo quebrar completamente o seu site.
É aí que entra o WPCode.

WPCode é o melhor plugin de snippets de código que permite adicionar com segurança PHP, CSS, HTML personalizados e muito mais ao seu site WordPress. Você também pode atualizar seu tema WordPress sem perder suas personalizações.
Além de exibir posts relacionados do mesmo autor, o WPCode permite adicionar código personalizado para mostrar posts aleatórios, excluir posts fixos do loop de posts e muito mais.
Primeiro, você precisa instalar e ativar o plugin gratuito WPCode. Para mais instruções, por favor, consulte nosso guia para iniciantes sobre como instalar um plugin do WordPress.
Após a ativação, vá para Code Snippets » + Add Snippet na barra lateral de administração do WordPress. Aqui, você verá todos os snippets prontos que pode adicionar ao seu site.
Para criar um snippet, basta passar o mouse sobre ‘Adicionar seu código personalizado (Novo Snippet)’ e, em seguida, clicar no botão ‘+ Adicionar Snippet Personalizado’.

Em seguida, você precisa selecionar um tipo de código na lista de opções que aparecem na tela. Para este tutorial, selecione ‘Snippet PHP’.

Você será então levado para a página ‘Criar Snippet Personalizado’, onde pode começar digitando um nome para o seu snippet de código.
O nome é apenas para sua referência, então você pode usar o que quiser.

Agora você pode prosseguir e colar o seguinte snippet na caixa ‘Visualização do Código’:
function wpb_related_author_posts($content) {
if (is_single()) {
global $authordata, $post;
// Fetch the author's display name
$author_name = get_the_author_meta('display_name', $authordata->ID);
// Insert the author's name into the string
$content .= '<h4>Similar Posts by ' . $author_name . ':</h4> ';
$authors_posts = get_posts(array(
'author' => $authordata->ID,
'post__not_in' => array($post->ID),
'posts_per_page' => 5
));
$content .= '<ul>';
foreach ($authors_posts as $authors_post) {
$content .= '<li><a href="' . get_permalink($authors_post->ID) . '">' . apply_filters('the_title', $authors_post->post_title, $authors_post->ID) . '</a></li>';
}
$content .= '</ul>';
return $content;
} else {
return $content;
}
}
add_filter('the_content', 'wpb_related_author_posts');
Este código verificará se a página é uma postagem única e, em caso afirmativo, recuperará as informações do autor.
Em seguida, ele exibirá um título que diz ‘Posts semelhantes de (nome do autor)’ e até 5 posts semelhantes (excluindo a postagem atual) do mesmo autor abaixo do conteúdo da postagem. A função também instrui o WordPress a executar o código em modelos de postagem única.
Depois disso, role para baixo até a seção ‘Inserção’.
Se ainda não estiver selecionado, escolha ‘Inserir Automaticamente’. Em seguida, abra o menu suspenso e escolha ‘Executar em Todos os Lugares’ para que os posts relacionados apareçam em todo o seu site WordPress.

Depois disso, você está pronto para rolar até o topo da tela e clicar no alternador ‘Inactive’ para que ele mude para ‘Active’.
Finalmente, clique em ‘Salvar Snippet’ para tornar o snippet PHP ativo.

Agora, se você visitar qualquer postagem em seu blog WordPress, você verá uma nova seção de posts relacionados.
Esperamos que este artigo tenha ajudado você a aprender como exibir facilmente posts relacionados do mesmo autor no WordPress. Você também pode querer ver nosso guia sobre como exibir posts populares por visualizações no WordPress ou nossas escolhas especializadas para os melhores plugins de posts relacionados para WordPress.
Se você gostou deste artigo, por favor, inscreva-se em nosso Canal do YouTube para tutoriais em vídeo do WordPress. Você também pode nos encontrar no Twitter e no Facebook.


L Waterfield
Desculpe por reabrir isso depois de todos esses anos, mas você poderia me dizer como colocar este conteúdo de posts relacionados em outro lugar que não seja "após o conteúdo da entrada"? Por exemplo, se eu quisesse que aparecesse após as informações do autor ou após a seção de comentários? Obrigado!
WPBeginner Support
Se você quisesse personalizar a localização específica onde ele aparece, você precisaria mudar 'the_content' para onde você gostaria de adicionar o conteúdo.
Admin
azad
Como Exibir Produto Relacionado do Mesmo Autor na barra lateral do WP
WPBeginner Support
Você precisaria entrar em contato com o suporte do plugin de e-commerce que você está usando para saber como configurar isso.
Admin
Alex
Ótimo, obrigado pelo seu artigo!
é possível obter os mesmos dados do CPT?
WPBeginner Support
Para fazer isso, você precisaria adicionar ao array de argumentos para incluir o tipo de postagem. Para a linha 8, você gostaria que fosse:
$authors_posts = get_posts( array( ‘post_type’ => ‘book’, ‘author’ => $authordata->ID, ‘post__not_in’ => array( $post->ID ), ‘posts_per_page’ => 5 ) );
Substitua book pelo seu tipo de post personalizado
Admin
Alex
Ótimo! Obrigado!
WPBeginner Support
You’re welcome
Ryan Caswell
Olá, o código funciona muito bem, mas há alguma maneira de incluir também a miniatura da imagem destacada do post? Isso seria incrível!
WPBeginner Support
Oi Ryan,
Sim, você pode adicionar
the_post_thumbnail();para exibir a imagem destacada.Admin
Ryan Caswell
Ótimo, obrigado! Desculpe, não sou muito de desenvolvimento PHP. Onde isso iria no código para que ele seja exibido? Muito obrigado!
Trishah Woolley
Sim, isso funciona. Obrigado!
E eu encontrei e corrigi outro problema… Se o autor tiver apenas uma postagem, a área de Postagens Relacionadas é exibida, mas não há informações nela. Para resolver isso, fiz o seguinte. E também adicionei uma div ao redor do conteúdo para estilizar a área.
// Related Author Posts function wpb_related_author_posts($content) { global $authordata, $post; $authors_posts = get_posts( array( 'author' => $authordata->ID, 'post__not_in' => array( $post->ID ), 'posts_per_page' => 5 ) ); if ( is_single() && (count($authors_posts) > 1 ) ) { $content .= '<div class="similar_posts"><h3>Similar Posts by The Author:</h3> '; $content .= '<ul>'; foreach ( $authors_posts as $authors_post ) { $content .= '<li><a href="' . get_permalink( $authors_post->ID ) . '">' . apply_filters( 'the_title', $authors_post->post_title, $authors_post->ID ) . '</a></li>'; } $content .= '</ul></div>'; return $content; } else { return $content; } } add_filter('the_content','wpb_related_author_posts');1-click Use in WordPress
Trishah Woolley
Estou testando o código functions.php acima em um site de desenvolvimento. As postagens relacionadas também estão aparecendo na parte inferior das páginas, como a página de contato. Como você está usando is_single, isso não deveria estar acontecendo. Você tem alguma ideia de por que isso está acontecendo?
WPBeginner Support
Oi Trishah,
Obrigado por relatar isso. Houve um pequeno erro no código que causou isso. Corrigimos o erro, agora você pode tentar o novo trecho de código.
Admin