Como Exibir Posts Populares por Visualizações no WordPress (2 Maneiras)

Se você já rolou até o final de um de nossos artigos, provavelmente notou nosso widget ‘Mais Populares no WPBeginner Agora!’. Este recurso tem sido um sucesso com nossos leitores, ajudando-os a descobrir nosso conteúdo mais valioso e incentivando-os a explorar mais nosso site.

Ao destacar seus posts de blog do WordPress mais populares, você não está apenas ajudando os leitores a encontrar seu melhor conteúdo – você também está impulsionando as métricas de engajamento do seu site. É uma situação ganha-ganha: os visitantes obtêm ótimo conteúdo e você os mantém no seu site por mais tempo.

Neste artigo, mostraremos como exibir facilmente seus posts mais populares com base em suas visualizações no WordPress.

Como Exibir Posts Populares por Visualizações no WordPress

Quando os usuários veem seus posts de blog do WordPress mais populares, eles podem descobrir qual conteúdo seus colegas leitores mais gostam. Dessa forma, eles podem conferir esses artigos e participar da conversa.

Além disso, exibir seu conteúdo mais popular no WordPress pode aumentar sua prova social. É como dizer aos novos usuários: “Ei, outras pessoas acharam esses posts muito úteis, e você também pode achar!”

Posts em alta e populares do WPBeginner

Finalmente, mostrar seus posts de blog em alta pode fazer as pessoas ficarem mais tempo no seu site, aumentando suas pageviews e reduzindo sua taxa de rejeição.

Quanto mais o engajamento do seu usuário aumenta, mais o Google considera seu conteúdo bom e importante. Por sua vez, seu SEO para WordPress melhora e seu site pode ter um ranking mais alto.

Infelizmente, o WordPress não possui um recurso ou bloco integrado para exibir seus posts mais populares por visualizações de página. Neste guia, mostraremos como fazer exatamente isso com um plugin e com código.

Basta clicar em um dos links rápidos abaixo para pular diretamente para o seu método preferido:

Método 1: Exibir Posts Populares do WordPress por Visualizações com MonsterInsights (Recomendado)

A maneira mais fácil de exibir posts populares por visualizações no WordPress é com um plugin. Existem, na verdade, muitos plugins de posts populares para WordPress disponíveis, mas na nossa opinião, a melhor escolha é o MonsterInsights.

O plugin MonsterInsights Google Analytics

Usado por mais de 3 milhões de sites em todo o mundo, o MonsterInsights é o melhor plugin do Google Analytics para WordPress. Embora sua principal funcionalidade seja a análise, ele também possui um recurso fácil de usar para mostrar seus posts mais populares.

Antes de mais nada, você precisará instalar o plugin MonsterInsights e conectá-lo à sua conta do Google Analytics. Para mais detalhes, veja nosso guia passo a passo sobre como instalar o Google Analytics no WordPress para iniciantes.

Observação: Embora uma versão gratuita do MonsterInsights esteja disponível, usaremos a versão Pro, pois ela inclui o recurso de posts populares.

Escolha um Widget de Posts Populares Tema

Depois de ativar e configurar o plugin, vá para Insights » Posts Populares no painel do WordPress. Em seguida, clique no item de menu 'Widget de Posts Populares'.

O Widget de Posts Populares no MonsterInsights

Rolando para baixo, você precisará selecionar um tema para exibir o widget de posts populares. Existem várias opções.

Alguns incluem uma imagem destacada para a postagem, enquanto alguns são mais minimalistas.

Escolhendo um tema de widget de posts populares no MonsterInsights

Se você quiser ver como o tema fica antes de fazer sua escolha, basta descer a página até a seção de Pré-visualização do Tema.

Você também pode pré-visualizar o tema em formato Largo ou Estreito. Com o formato Largo, você verá suas postagens listadas sob o conteúdo da página ou postagem, enquanto o formato Estreito exibe as postagens no lado direito, como uma barra lateral.

Visualizando o tema do widget de posts populares no MonsterInsights

Em seguida, vamos rolar para baixo até a seção 'Personalizar Design'. Aqui, você pode modificar as cores do tema, o tamanho da fonte, o layout e a contagem de postagens a serem exibidas.

As opções de personalização aqui podem variar dependendo do tema que você usa. Portanto, certifique-se de explorar os diferentes temas para ver qual deles se adapta melhor a você.

Personalizando o tema do widget de posts populares no MonsterInsights

Configurar o Comportamento do Widget de Posts Populares

Depois de configurar o design do tema, você deve ir para a seção Comportamento. É aqui que você controlará como o widget de posts populares aparecerá em seu site WordPress.

Nas configurações de Estilo do Widget, você pode escolher usar o design que você fez acima ou optar por não estilizar o widget. Com a segunda opção, o widget seguirá o CSS do tema do seu site WordPress.

Em seguida, você pode escolher como o widget deve selecionar seus posts mais populares. Para este tutorial, escolha 'Com curadoria', mas você também pode exibir os posts mais populares com base no número de comentários.

Algumas das configurações de comportamento do widget de posts populares no MonsterInsights

O que você precisa fazer a seguir é habilitar a opção ‘Adicionar os 5 Posts Principais do Google Analytics’ abaixo. Mas antes de fazer isso, você precisará do MonsterInsights Dimensions Add-On e adicionar o tipo de post como uma nova dimensão personalizada.

Isso permitirá que o MonsterInsights escolha os posts mais populares com base nos dados do Google Analytics.

Para fazer isso, você precisa baixar o MonsterInsights Dimensions Add-on e instalá-lo como um plugin no WordPress. Para instruções passo a passo, confira nosso guia sobre como instalar um plugin do WordPress.

Em seguida, vá para Insights » Configurações e mude para a aba ‘Conversões’. Depois disso, clique em ‘Adicionar Nova Dimensão Personalizada’.

Adicionando uma nova dimensão personalizada no MonsterInsights

Assim que terminar, selecione ‘Tipo de post’ no menu suspenso.

Isso permitirá que o MonsterInsights rastreie o desempenho dos seus posts de blog e outros tipos de post personalizados.

Selecionando o tipo de post como uma dimensão personalizada no MonsterInsights

Agora, basta retornar para Insights » Posts Populares e ir para ‘Widget de Posts Populares’.

Simplesmente ative o botão de alternância ‘Adicionar os 5 Posts Principais do Google Analytics’. Em seguida, clique em ‘Testar Posts Automatizados’ para ver se a configuração foi bem-sucedida.

Adicionando os 5 posts principais com base nos dados do GA no MonsterInsights

Se sim, você verá uma mensagem de sucesso aparecer.

Deverá dizer: ‘Os dados dos Posts Populares podem ser buscados corretamente. Por favor, note: dependendo de quando você configurou as configurações de Dimensões Personalizadas, pode levar até 7 dias para ver os dados relevantes de Posts Populares sendo carregados do Google Analytics.’

Os dados dos posts populares podem ser buscados corretamente mensagem pop-up no MonsterInsights

Passando para os próximos passos, você agora pode adicionar um título que aparecerá acima do widget. Pode ser algo como ‘Confira Nossos Posts Mais Populares’ ou qualquer coisa semelhante.

Abaixo disso, você pode escolher se o widget deve ser exibido em todos os tipos de postagem, ser excluído de postagens específicas e/ou aparecer apenas em certas categorias de postagem.

Essas configurações são úteis se você criou tipos de postagem personalizados além das postagens de blog e acha que o widget de postagens populares parecerá irrelevante lá.

Mais configurações de comportamento para o widget de postagens populares no MonsterInsights

Uma das últimas etapas é incorporar o widget de postagens populares. Existem várias opções: colocá-lo automaticamente, usar um bloco Gutenberg, adicioná-lo como um widget de barra lateral ou usar um shortcode.

Vamos analisar cada opção uma por uma.

As opções de incorporação do widget de posts populares no WordPress

Incorporar o Widget de Postagens Populares Automaticamente

A Colocação Automática é recomendada se você quiser que o widget apareça em todas as postagens que correspondem às configurações de Comportamento que você definiu anteriormente.

Para isso, tudo o que você precisa fazer é ativar o botão Colocação Automática.

Ativando a colocação automática para o widget de posts populares no MonsterInsights

A desvantagem desta opção é que você não pode ajustar o design do widget com base no que fica melhor na postagem ou página. Se você precisar desse tipo de funcionalidade, poderá tentar o próximo método.

Incorpore o Bloco de Posts Populares a uma Página ou Postagem

Se você deseja ter mais controle sobre como o widget aparece em uma página ou postagem, este método é para você.

Primeiro, vá para o editor de blocos da postagem ou página onde você deseja que o widget esteja. Depois disso, clique no botão ‘+’ para adicionar um bloco em qualquer lugar do editor e procure pelo bloco de Posts Populares.

Adicionando o bloco de posts populares do MonsterInsights no editor de blocos do WordPress

No painel de configurações do Bloco, você verá que existem opções para alterar o tema do widget, tamanho da fonte, cores, título, layout e contagem de posts.

Essas configurações são semelhantes às que vimos no plugin MonsterInsights.

Configurações do bloco de posts populares do MonsterInsights no editor de blocos do WordPress

A única diferença é que você não pode alterar quais posts são escolhidos no widget.

Dito isso, nas Configurações de Comportamento, é possível exibir apenas posts de certas categorias. Dessa forma, você pode tornar as escolhas de posts populares mais adequadas às suas necessidades.

Escolhendo exibir apenas posts de certas categorias no widget de posts populares do MonsterInsights

Assim que estiver satisfeito com as configurações do bloco, basta clicar no botão ‘Atualizar’ no editor de postagens e páginas.

Veja como o bloco de Posts Populares aparece em nosso site de teste:

Exemplo de como o bloco de postagens populares do MonsterInsights se parece no site WordPress

Incorpore o Widget de Posts Populares a uma Barra Lateral

Se você estiver usando um tema WordPress que não seja de blocos e que tenha uma área de barra lateral pronta para widgets, você pode adicionar o widget de Posts Populares a ela. Foi isso que fizemos em nosso artigo como adicionar posts em destaque na sua barra lateral do WordPress.

Tudo o que você precisa fazer é ir em Aparência » Widgets. Em seguida, clique no botão ‘+’ para adicionar um widget na área da Barra Lateral e procure pelo widget Posts Populares – MonsterInsights.

Adicionando o widget de posts populares do MonsterInsights à área da barra lateral

Assim como no método anterior, o widget inclui configurações semelhantes para personalizar a aparência do seu tema.

O que é diferente é que a interface é um pouco mais complicada de usar. Ao alterar as configurações, você não consegue ver como o widget realmente fica. Você terá que clicar em um widget diferente ou em outra área para visualizá-lo.

Se você estiver satisfeito com a aparência do widget, basta clicar em ‘Atualizar’ no canto superior direito.

Atualizando a área da barra lateral após adicionar o widget de posts populares do MonsterInsights

Certifique-se de ir ao seu site para verificar se a barra lateral está correta.

Veja como o nosso fica:

Exemplo do widget de posts populares do MonsterInsights em uma barra lateral

Se você quiser que o widget Posts Populares apareça apenas em páginas específicas, então você pode ler nosso guia sobre como mostrar ou ocultar widgets em páginas específicas do WordPress.

Incorpore o Widget de Posts Populares Com um Shortcode

A última opção é usar um shortcode. Este método é recomendado se as opções acima não funcionarem para o seu caso de uso específico.

Na aba Widget de Posts Populares, role até o final da seção ‘Opções de Incorporação’. Em seguida, escolha ‘Exibir usando um Shortcode’ e clique no botão ‘Copiar Shortcode’.

Copiando o shortcode do widget de posts populares no MonsterInsights

Depois disso, simplesmente coloque o shortcode onde quiser. Para mais informações, confira nosso guia sobre como adicionar shortcodes no WordPress.

Método 2: Exibir Posts Populares do WordPress por Visualizações com Código (Mais Avançado)

O método MonsterInsights é a maneira mais fácil de exibir seu conteúdo mais popular e melhor por visualizações no WordPress. Mas se você se sente confortável com codificação, então você também pode usar código para mostrar seus posts mais populares do WordPress.

Para este método, recomendamos o uso de um plugin de trechos de código como o WPCode, que é o que usaremos neste guia.

WPCode - Melhor Plugin de Trechos de Código para WordPress

O WPCode torna seguro inserir código personalizado sem interagir diretamente com seus arquivos do WordPress. Além disso, como este método requer o uso de vários trechos de código, o plugin tornará o gerenciamento e o rastreamento de todos eles muito mais fáceis.

Primeiro, você precisa instalar o WPCode no WordPress. Uma versão gratuita do WPCode está disponível, mas usaremos a versão Pro, pois ela vem com os recursos que precisamos para inserir o código nos locais corretos.

Para um guia de instalação passo a passo, leia nosso artigo sobre como instalar um plugin do WordPress.

Adicionar Função de Contador de Visualizações de Posts do WordPress

Após a ativação do plugin, você precisa ir para Code Snippets » + Add Snippet no painel. Em seguida, passe o mouse sobre ‘Add Your Custom Code (New Snippet)’ e clique em ‘+ Add Custom Snippet.’

Adicionando um novo trecho de código personalizado no WPCode

Agora, você está dentro do editor de snippets de código do WPCode. Antes de inserir qualquer código, adicione um título para o snippet.

Para este primeiro código, você pode nomeá-lo algo como ‘Função de Contador de Visualizações de Posts do WordPress’. Isso ocorre porque o propósito deste primeiro código é criar uma função para contar as visualizações de posts no WordPress.

Em seguida, altere o Tipo de Código para ‘PHP Snippet’. Observe que todo snippet de código que você terá que adicionar deste artigo está em PHP.

Criando a Função de Contador de Visualizações de Posts do WordPress no WPCode

Depois disso, você pode copiar e colar o seguinte código abaixo:

function wpb_set_post_views($postID) {
    $count_key = 'wpb_post_views_count';
    $count = get_post_meta($postID, $count_key, true);
    if($count==''){
        $count = 0;
        delete_post_meta($postID, $count_key);
        add_post_meta($postID, $count_key, '0');
    }else{
        $count++;
        update_post_meta($postID, $count_key, $count);
    }
}
//Get rid of prefetching to keep the count accurate
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0);

Agora, basta rolar para baixo até a seção ‘Insertion’ e selecionar ‘Auto Insert’ para o Método de Inserção e ‘Run Everywhere’ para a Localização. Isso funciona da mesma forma que inserir o código no arquivo functions.php do seu tema.

Depois disso, navegue até o canto superior direito da página e ative o código.

Em seguida, clique em ‘Save Snippet.’

Escolhendo o método e a localização de inserção no WPCode

Nesta etapa, você precisa adicionar outro novo trecho de código personalizado. Você pode nomear este como ‘Track Post Views Function Call.’

Este código chamará a função acima e a ativará em suas páginas de postagem única.

Assim que terminar, copie e cole o seguinte trecho:

wpb_set_post_views(get_the_ID());

O que há de diferente neste trecho de código é que você escolherá a localização ‘Insert After Post’ (Inserir Após Postagem), pois ele deve ser executado em suas páginas de postagem única.

Escolhendo Inserir Após o Post como a localização de inserção do código no WPCode

Quando terminar, basta ativar o código e salvá-lo.

Inserir Hook de Rastreamento de Visualizações de Postagem do WordPress

Agora, você precisa adicionar um novo trecho de código que verifica se a página atual é uma postagem única. Se for, ele chamará a Função do Contador de Visualizações de Postagem do WordPress para rastrear e atualizar a contagem de visualizações da postagem.

Dessa forma, toda vez que um usuário visitar a postagem, sua contagem de visualizações será atualizada.

Vamos nomear este trecho como ‘WordPress Post Views Tracking Hook.’ Em seguida, insira as seguintes linhas de código:

function wpb_track_post_views ($post_id) {
    if ( !is_single() ) return;
    if ( empty ( $post_id) ) {
        global $post;
        $post_id = $post->ID;    
    }
    wpb_set_post_views($post_id);
}
add_action( 'wp_head', 'wpb_track_post_views');

Você pode escolher o método de inserção como ‘Auto Insert’ (Inserção Automática) e a localização como ‘Frontend Only’ (Somente Frontend).

Assim como nas etapas anteriores, basta ativar o código e salvar o trecho.

Escolhendo Apenas Frontend como a localização de inserção do código no WPCode

Observação: Se você estiver usando um plugin de cache, esta técnica pode não funcionar por padrão. Você pode usar o recurso de cache de fragmentos oferecido por alguns plugins de cache como o W3 Total Cache para fazê-lo funcionar.

Adicionar Funções para Recuperar Contagem de Visualizações de Postagem e Exibir Postagens Mais Populares com Contagem de Visualizações

Estamos agora nas etapas finais deste guia. Você precisa adicionar um trecho de código que recupera e formata o número de visualizações de uma determinada postagem do WordPress. Isso será útil mais tarde ao exibir a lista de postagens mais visualizadas.

Você pode nomear este código como ‘Função de Recuperar Contagem de Visualizações de Postagens’ e definir a localização como ‘Executar em Todos os Lugares’.

Aqui está o trecho de código:

function wpb_get_post_views($postID){
    $count_key = 'wpb_post_views_count';
    $count = get_post_meta($postID, $count_key, true);
    if($count==''){
        delete_post_meta($postID, $count_key);
        add_post_meta($postID, $count_key, '0');
        return "0 View";
    }
    return $count.' Views';
}

Novamente, certifique-se de ativar o código no WPCode e salvá-lo depois.

Depois de fazer isso, crie um novo trecho de código novamente e nomeie-o ‘Exibir Postagens Mais Populares com Contagem de Visualizações’. Este é o código que mostrará suas postagens mais populares no final das suas postagens de blog.

Na caixa de Visualização de Código, insira o seguinte trecho:

// Customize the query parameters as needed
$popularpost = new WP_Query( array(
    'posts_per_page' => 3,         // Feel free to adjust the number of posts to display
    'meta_key' => 'wpb_post_views_count',
    'orderby' => 'meta_value_num',
    'order' => 'DESC'
));
?>

<div class="popular-posts">
    <h2>See Our Most Popular Posts</h2> <!-- Feel free to customize the title -->
    <ul>

    <?php while ( $popularpost->have_posts() ) : $popularpost->the_post(); ?>
        <li>
            <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
            - <?php echo wpb_get_post_views(get_the_ID()); ?>
        </li>
    <?php endwhile; ?>

    </ul>
</div>

<?php wp_reset_postdata(); 

Conforme observado no código, sinta-se à vontade para ajustar o número de posts a serem exibidos e personalizar o título desta seção.

Na seção Inserção do WPCode, certifique-se de selecionar ‘Inserir após o post’ para a Localização. Em seguida, ative o código e salve o snippet.

Tudo o que resta a fazer agora é visitar um dos seus posts do blog e ver se o código funciona. Veja como a seção de posts mais populares por visualizações se parece em nosso blog WordPress de teste:

Como a seção de posts mais populares por visualizações se parece feita com WPCode

Dica de especialista: Se você deseja personalizar ainda mais o código, mas não tem experiência em codificação, pode usar o Gerador de Código IA do WPCode para ajudá-lo. Este recurso pode editar seu código existente para atender às suas necessidades exatas.

Para mais informações, confira nossa análise completa do WPCode.

Tutorial em Vídeo

Se você prefere instruções visuais, assista à versão em vídeo deste tutorial abaixo:

Inscreva-se no WPBeginner

Esperamos que este tutorial do WordPress tenha ajudado você a aprender como exibir posts populares por visualizações. Você também pode querer conferir nossa seleção especializada dos melhores plugins de posts relacionados para WordPress e nosso artigo sobre o que torna uma página de destino de alta conversão.

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.

Aviso: Nosso conteúdo é apoiado pelos leitores. Isso significa que, se você clicar em alguns de nossos links, poderemos ganhar uma comissão. Veja como o WPBeginner é financiado, por que isso importa e como você pode nos apoiar. Aqui está nosso processo editorial.

O Kit de Ferramentas Definitivo para WordPress

Obtenha acesso GRATUITO ao nosso kit de ferramentas - uma coleção de produtos e recursos relacionados ao WordPress que todo profissional deve ter!

Interações do Leitor

167 CommentsLeave a Reply

  1. Olá,
    Eu uso este código há meses e funciona muito bem! Isso até eu começar a usar o W3 Total Cache e este código parar de contar visualizações para mim.
    Estou preso em onde preciso colocar o mfunc para que o código funcione com o cache. Você pode apontar isso?
    Para sua informação, coloquei todo o código em um plugin específico do site.

  2. olá, tenho um problema em como configurar, como quando o usuário logado não será incluído na contagem ao visualizar qualquer página?? como faço isso.. por favor, preciso de ajuda com isso. obrigado

  3. Hey there, thanks for this. REALLY helpful!! Would you know how to apply a time range to this code? For example to show the most popular posts in the last day, week or month etc? I know there are plugins for this but I would like to do it without one :)

  4. Olá,
    obrigado por este bom tutorial. Funciona na minha página!

    – como posso excluir robôs e spiders que acessam meus posts?
    – Talvez eu possa definir um temporizador de 10 segundos. depois disso a contagem deve aumentar. Assim, as pessoas que apenas clicam nos posts não são contadas.

    Saudações,
    Denis

  5. Olá – muito obrigado por isso! Notei a pergunta sobre a solução alternativa do W3TC, mas tenho uma pergunta um pouco diferente: isso ainda se aplica se eu estiver conectando ao wp_head do functions.php, e se sim, como exatamente eu o implemento lá? Obrigado!

  6. Olá, obrigado por este trecho.

    Tenho um problema, o orderby não funciona. Tenho cinco posts:
    – Post 1: 85 visualizações
    – Post 2: 35 visualizações
    – Post 3: 165 visualizações
    – Post 4: 1 visualização
    – Post 5: 1 visualização

    Quando eu exibi, a ordem foi: 1, 2, 4, 5 e 3

    Você tem alguma ideia, por favor?

  7. Seguindo seu artigo, estou usando a contagem de visualizações de posts no meu site há 6 meses. Estava funcionando bem, mas recentemente estou tendo problemas com isso. Se um visitante visualiza um post, a contagem aumenta em 1, mas o problema é que a contagem está aumentando em todos os outros posts. Tenho o w3 total instalado e estou usando mfunc de acordo com seu artigo. Por favor, me ajude se você tiver alguma ideia sobre este problema… Obrigado.

  8. Olá,
    Estou querendo mudar de plugin porque ele não suporta a linguagem polylang (o autor não está me respondendo e eu realmente não sei se é possível filtrar funções para o plugin...)
    Duas perguntas:
    – Eu examinei o código um pouco e não tenho certeza se este código começa a contar os posts a partir de quando ele é implementado? Ou ele recupera de alguma forma onde as contagens de posts estão atualmente?
    – O código atual neste site usa a função get_posts() para criar um array de argumentos em vez de usar WP_Query(). Isso é a mesma coisa? Eu presumo que não. E se não for, o código abaixo está correto para obter o array? Eu tentei implementar isso, mas não pareceu funcionar.
    $args = array( ‘meta_key’ => ‘wpb_post_views_count’, ‘orderby’ => ‘meta_value_num’, ‘order’ => ‘DESC’,’numberposts’ => 6, ‘post_status’=>”publish”,’post_type’=>”post”,’lang’ => ‘en’);
    obrigado!

  9. Esta abordagem é muito básica. Se você quiser contar cliques do mesmo usuário (mesmo IP) apenas a cada 5 minutos ou 10 minutos, etc., você precisa ter uma tabela separada para isso e, antes de adicionar uma nova linha no banco de dados, você precisa verificar o IP e o horário. Se houver um registro salvo há 3 minutos, o clique não é adicionado. Caso contrário, ele é adicionado. Essa abordagem também permite criar uma lista personalizada dos artigos mais vistos em 7 dias, mês, todo o tempo, etc. Ou até mesmo por categoria, usuário, etc. (se você armazenar valores apropriados nas colunas apropriadas da tabela).

  10. estou tentando .. quando você diz para colocar o código wpb_set_post_views(get_the_ID()); dentro do loop de postagem única, isso significa usar este código dentro do tema single.php em qualquer lugar?
    obrigado pela sua ajuda

  11. Existe alguma maneira de restringir quando as visualizações de postagem são coletadas? Por exemplo, estou procurando exibir as postagens com mais visualizações nas últimas 24 horas, como você faria algo assim usando este código?

    Ótimo post, aliás, muito útil!

  12. E se o seu single-xxxx.php não usar o loop, mas campos personalizados? Como posso usar este código se eu não usar o loop?

  13. Obrigado por este post! Muito, muito bom.
    Tenho duas perguntas:

    1. Existe alguma possibilidade de contar apenas uma visita por endereço IP? Como?.
    2. Posso mostrar os posts mais populares por um período específico de tempo? Por exemplo, os posts mais visitados este mês, ou os posts mais populares de 1 de maio a 1 de junho…

    Obrigado!

  14. Oi,
    Este código está funcionando, mas sempre que recarrego a página, ele adiciona "2" à contagem total de páginas. Por exemplo, se a contagem de páginas é 14 e após recarregar a contagem total de páginas é 16… alguém pode adivinhar qual é o problema?

    Shishir Umrao

  15. Post muito útil, consegui fazer minhas páginas de Tag ordenarem posts por um valor de campo personalizado semelhante à contagem de visualizações de posts, no entanto, tenho paginação em minhas páginas de tag e elas continuam mostrando os mesmos posts de maior destaque em todas as páginas, mesmo depois de eu ter removido este código:

    ‘posts_per_page’ => 4,

    Como corrijo a paginação para que ela mostre outros posts nas páginas de Tag subsequentes?

    • Como você conseguiu fazer suas páginas de Tag ordenarem posts por um valor de campo personalizado semelhante à contagem de visualizações de posts?

      Parece que o plugin de posts populares só aceita categorias como parâmetro.

  16. Obrigado pelas instruções muito detalhadas. Usar isso para exibir os posts mais populares causará muita carga adicional no servidor se um site tiver tráfego significativo? Alguns plugins do WP para esse tipo de coisa tendem a ter esse problema.

  17. Ainda estou aprendendo essas coisas, então me perdoe pela minha ignorância.

    Como você permite que o usuário escolha entre consultas como eles fazem no codecanyon quando permitem que você ordene por preço, vendas, data etc.?

    Muito obrigado.

  18. Oi, que ótimo!
    Mas 'orderby' => 'wpb_post_views_count meta_value_num' não está funcionando.
    Por favor, use: 'orderby' => 'meta_value_num'
    Obrigado

  19. Obrigado, funciona para mim, apenas com uma exceção importante – posts populares não são links, apenas seus títulos. Como posso corrigir isso, por favor?

  20. Adicionei este código da maneira descrita no artigo e, após a ativação, vi isto….

    O plugin gerou 2 caracteres de saída inesperada durante a ativação. Se você notar mensagens de “cabeçalhos já enviados”, problemas com feeds de sindicação ou outros problemas, tente desativar ou remover este plugin.

    • Corrigido. Fiz duas coisas:

      1. Mudei minha estrutura de permalink para uma estrutura personalizada /%category%/%postname%/
      2. Verifiquei todas as minhas páginas em busca de espaços extras.

      Um deles funcionou.

      …vai entender

      Preston

  21. Olá, acho que é necessário adicionar – wp_reset_query(); – ao final da query para destruir a query anterior usada em um Loop personalizado.

    Espero que ajude alguém.

  22. Tenho isso funcionando em 95% usando uma WP Query personalizada para exibir posts populares de cada categoria.

    A única parte que não está funcionando para mim é a ordem – a minha não exibe em ordem decrescente de visualizações.

  23. Obrigado pelo post! Isso realmente ajudou.

    Não tenho certeza se mais alguém encontrou este problema, mas ao configurar os argumentos para WP_Query, você tem orderby => ‘wpb_post_views_count’. Isso foi um problema para mim porque eu não tinha certeza de como ele estava ordenando minhas postagens. No codex, diz que se você estiver usando números, eles só serão classificados pelo primeiro dígito. Para corrigir isso, você pode simplesmente substituir ‘wpb_post_views_count’ por ‘meta_value_num’. Isso basicamente dirá à consulta para acessar o valor meta da postagem e provavelmente convertê-lo para um inteiro antes de classificar. Espero que isso ajude quem encontrar os mesmos problemas.

    No geral, funciona muito bem! Tenho as 4 postagens mais populares em um slider na página inicial. Obrigado novamente!

  24. Isso fica ótimo na minha página inicial, mas parece querer exibir em meu single.php ou em qualquer outro lugar do meu site. Tentei criar um sidebar-single.php e inserir o código, mas ainda sem sucesso. Alguma ideia de por que não funcionaria em outras áreas do meu tema?

    • Isso geralmente acontece quando a chave meta wpb_post_views_count não está disponível para as postagens, certifique-se de adicionar a função que rastreia as visualizações dentro do loop do wp, caso contrário, ele continuará mostrando postagens aleatórias.

      – Mody

      • Olá,
        Estou usando seu código para rastrear visualizações de posts no tema do WordPress.

        function wpb_get_post_views($postID){ $count_key = ‘wpb_post_views_count’; $count = get_post_meta($postID, $count_key, true); if($count==”){ delete_post_meta($postID, $count_key); add_post_meta($postID, $count_key, ‘0’); return “0 Visualização”; } return $count.’ Visualizações’; }

        O problema é que quando uso o W3 Total Cache, o rastreamento de visualizações não está funcionando corretamente.

        Existe alguma maneira nas Opções do W3 Total Cache de ignorar apenas esta função, mas ao mesmo tempo quero que o código funcione com o W3 Total Cache?

        Obrigado!

  25. Olá
    Segui seus tutoriais e fiz exatamente o que você disse.
    Também adicionei seu snippet
    php query_posts(‘meta_key=post_views_count&orderby=meta_value_num&order=DESC’);
    em index.php

    Estou enfrentando um pequeno erro,
    Estou usando rolagem infinita
    quando coloco este snippet em index.php
    a rolagem infinita, em vez de carregar o próximo conjunto de posts
    carrega os mesmos conjuntos de posts

    Para melhor compreensão, você pode verificar ao vivo aqui
    blog.newgags,com

  26. Por algum motivo, minhas visualizações de posts estão sendo incrementadas em 2 a cada atualização da página. O que pode estar acontecendo?

    • Peço desculpas. Eu havia adicionado o rastreador tanto ao cabeçalho do WP quanto ao corpo do post individual. Muito estúpido da minha parte :}

      Bom tutorial, muito fácil de seguir.

  27. Antes de mais nada, obrigado por este post. Em segundo lugar, estou usando este script há alguns dias e, por algum motivo, começou bem e agora não está exibindo os posts mais vistos. Não vejo nenhuma lógica para quais posts estão sendo exibidos agora. A última vez que verifiquei, o post que está sendo exibido no topo tem 8 visualizações de página. Sei que existem posts com mais de 25 visualizações registradas. Gostaria de descobrir isso. Você pode me apontar na direção certa? Segui este post palavra por palavra. As visualizações de post estão sendo registradas corretamente.

  28. Olá. Isso funciona bem até que a contagem de visualizações ultrapasse 999. Todos os posts com mais visualizações do que 999 não são exibidos, a consulta nunca os posta. O post mais recente é o que tem exatamente 999 e o resto está abaixo disso. Tenho mais de 100 posts com mais de mil e que não estão sendo incluídos.

  29. Vocês são demais!

    Pergunta rápida:
    Se eu adicionar um tipo de post personalizado no seu código?
    (posts populares de um tipo de post personalizado específico)

    Atenciosamente (:

  30. Este é um bom tutorial básico, mas atenção: ele não vai funcionar se você usar estratégias de cache que ignoram o PHP (como wp-supercache, W3TC, nginx/varnish, etc.). A única maneira de contá-los seria via Javascript ou análise de logs.

    • Olá Artem, obrigado por passar por aqui. Na verdade, usando o W3 Total Cache, você pode usar o cache de fragmentos e ele funciona perfeitamente. Vou atualizar o artigo para aqueles que usam o plugin de cache.

      Admin

      • Interessante. No entanto, eu executo o nginx na frente do W3TC, e ele faz muito do seu próprio cache, então é sempre mais seguro/confiável usar uma abordagem AJAX. Boas informações sobre o cache de fragmentos, eu não tinha ideia de que o W3TC o possuía.

  31. Por que usar
    //Para manter a contagem precisa, vamos remover o pré-carregamento
    remove_action( ‘wp_head’, ‘adjacent_posts_rel_link_wp_head’, 10, 0); ?

    se você pode usar o loop principal ou o rodapé?

    • Alguns navegadores pré-carregam os links rel com o próximo valor. Então, tecnicamente, quando um usuário visualiza um post, ele pode agir como se tivesse visualizado ambos os posts. Isso causará uma contagem imprecisa. Se você gosta de visualizações infladas, então não remova.

      Admin

      • Por favor, pare de dizer coisas assim. Plugins não são ruins, são artigos como este que os fazem parecer ruins. Já saíram artigos suficientes nas últimas semanas para explicar isso completamente – está ficando um pouco embaraçoso.

        • Como você sugeriria titular posts futuros em vez disso? Prefixo DIY? Estes são diferentes de apenas usar um plugin pré-fabricado. Além disso, se você ler o artigo, não há em nenhum lugar em nosso artigo que dizemos que “plugins são ruins”. Declaramos claramente que a única razão pela qual codificamos isso foi para obter mais personalização. Cabe ao usuário tomar qualquer posição. Alguns podem pensar que plugins são ruins… enquanto outros, como você, podem pensar que estamos dizendo que plugins são ruins…

        • Não acho que nenhum tipo de prefixo seja necessário. É uma das coisas ótimas/assustadoras sobre o WordPress. Você PODERIA colocar este código no seu tema, mas isso levanta o argumento sobre a necessidade de, 1) Perder essas personalizações ao mudar de tema, ou 2) ter o conhecimento para transferi-las adequadamente para outro tema.

          Muitos dos usuários aqui são iniciantes (daí o propósito deste site), então muitos apenas copiarão/colarão o que você der a eles. O WP Beginner é obviamente um recurso fantástico (razão pela qual eu te sigo no Twitter), mas você tem a responsabilidade de não passar uma noção falsa sobre como plugins/temas funcionam.

          Correto, você não diz abertamente: “Plugins são ruins, coloque isso no seu tema em vez disso!”, mas o comentarista original do tópico ao qual respondi disse: “Eba! Um tutorial que não requer um plugin!” – então, mesmo que você não tenha dito isso, foi assim que foi interpretado.

          Eu sugeriria fazer o que Pippin faz para os plugins dele – ele tem um plugin inicial simples que usa para todos os seus tutoriais. Por que não criar um download de “Plugin Inicial” em branco, com apenas o básico, para que outros possam baixar e colocar suas personalizações lá em vez disso? Referencie-o em cada artigo que você fizer e isso elimina parte da confusão. Obrigado.

        • Temos seguido o conselho de Otto sobre plugins específicos do site há algum tempo. Provavelmente é semelhante ao que Pippin faz. Se você ler este artigo, plugin específico do site está hiperlinkado. Está na maioria dos outros artigos também. Esse artigo mostra aos usuários a importância do plugin específico do site e aconselha os usuários a não colocar tudo no arquivo functions.php. Na parte inferior desse artigo, o exemplo de “plugin inicial” está disponível para qualquer um começar.

        • Para ser justo, este tutorial me ajudou. Eu queria uma solução simples para posts populares depois de tentar alguns dos plugins e não conseguir controlar totalmente a marcação. Este tutorial me ajudou a implementar rapidamente algumas funcionalidades de posts populares no meu próprio plugin.

          Então, concordo que usar plugins pré-fabricados não é algo ruim, mas às vezes tutoriais como este são úteis para ter controle e criar um plugin que funcione da maneira que você precisa, em vez de lutar contra um plugin já pronto.

    • Como Zach disse, por favor, pare de usar “sem um plugin”. Claro, é legal ver como codificar isso sozinho, mas não há literalmente nenhuma diferença entre este código e o código de um plugin. Você poderia colocar este código em um plugin e ele funcionaria de forma idêntica a colocá-lo em seu tema.

      • Se você diz que não há diferença, você não tem ideia do que está falando. Vamos supor que você esteja trabalhando em um site e não tenha acesso ao diretório de plugins, tornando uma solução que funcione "sem usar um plugin" uma alternativa viável.

        Quanto ao título, semanticamente o título deve refletir o conteúdo da postagem e poderia ser "Como exibir posts populares por visualizações no WordPress com ou sem um plugin".

        No entanto, levando o SEO em consideração, digamos que ele gostaria que esta postagem alcançasse um público específico, por exemplo, pessoas que não querem ou não podem usar um plugin, o título provavelmente seria melhor como está.

  32. estou usando o tema filho do genesis..você pode me dizer quais funções e códigos usar..desculpe, sou um novato no genesis...

      • é verdade? como artim disse, este código se torna irresponsivo quando usamos um plugin de cache?? por exemplo, eu uso atualmente o W3 total cache e quero usar este método para construir meu widget personalizado de posts populares por visualizações... li este tipo de post no wpsnipp.com e os usuários sugeriram que não funciona quando ativamos plugins de cache... responda logo...

Deixe uma resposta

Obrigado por escolher deixar um comentário. Por favor, tenha em mente que todos os comentários são moderados de acordo com nossa política de comentários, e seu endereço de e-mail NÃO será publicado. Por favor, NÃO use palavras-chave no campo do nome. Vamos ter uma conversa pessoal e significativa.