Como Excluir Postagens Fixas do Loop no WordPress

Com base em nossa experiência trabalhando com sites WordPress, posts fixados podem ser uma bênção e um desafio.

Embora sejam ótimos para destacar conteúdo em destaque, descobrimos que eles nem sempre se encaixam naturalmente em todas as seções de um site, especialmente ao tentar manter layouts limpos e organizados.

Às vezes, a melhor maneira de manter um site organizado e amigável é excluir posts fixados do loop. Isso lhe dá mais controle sobre como seu conteúdo aparece e garante que os leitores vejam os posts mais relevantes primeiro.

É por isso que, neste artigo, mostraremos como excluir completamente posts fixados do loop no WordPress.

Como excluir posts fixos do loop no WordPress

Por que você deve excluir posts fixados do loop?

Remover posts fixados de um loop em seu site WordPress pode ser útil se você não quiser exibi-los em uma área específica do seu site WordPress.

Posts fixados são úteis para destacar conteúdo importante, como seus artigos principais, posts de blog com alto tráfego e conteúdo sensível ao tempo. No entanto, eles podem lotar sua área de widget de posts mais recentes e dificultar o acesso ao seu conteúdo mais recente.

É aqui que excluir posts fixos do loop se torna útil. O WordPress não pode adivinhar isso, então você precisa dizer explicitamente ao WordPress para excluir posts fixos de um loop personalizado.

Vamos ver como você pode remover posts fixos do loop no WordPress.

Excluindo Posts Fixos do Loop no WordPress

Para ajudar você a excluir um post fixo do topo do loop ou removê-los completamente do loop, criamos um snippet de código personalizado.

Como isso requer a edição de código no seu site, pode ser complicado para iniciantes. Se você nunca fez isso antes, recomendamos consultar nosso guia sobre como colar snippets da web no WordPress para mais detalhes.

Você também pode considerar contratar um desenvolvedor para ajuda individual.

Como Ignorar Posts Fixos no WordPress

Este código ignora que um post é fixo e exibe os posts na ordem normal no seu blog WordPress.

Ao usar este código, seus posts fixos ainda aparecerão no loop, mas não serão colocados no topo.

Tudo o que você precisa fazer é inserir o seguinte código no arquivo functions.php do seu tema ou em um plugin de snippets de código:

<?php
 
// The loop arguments
$args = array(
    'posts_per_page' => 10,
    'ignore_sticky_posts' => 1 
);
 
// The loop
$the_query = new WP_Query($args);
if ($the_query->have_posts()) {
    while ($the_query->have_posts()) {
        $the_query->the_post();
 
            }
}

Recomendamos adicionar este código com WPCode, o melhor plugin de snippets de código para WordPress. Com o WPCode, você pode adicionar código personalizado no WordPress de forma segura e fácil, sem editar o arquivo functions.php do seu tema.

Para começar, você precisa instalar e ativar o plugin gratuito WPCode. Se precisar de ajuda, veja este tutorial sobre como instalar um plugin do WordPress.

Assim que o plugin for ativado, vá para a página Snippets de Código » + Adicionar Snippet no seu painel do WordPress.

A partir daí, encontre a opção ‘Adicionar Seu Código Personalizado (Novo Snippet)’ e clique no botão ‘+ Adicionar Snippet Personalizado’ abaixo dela.

Adicionar snippet personalizado no WPCode

Em seguida, você precisa selecionar ‘Snippet PHP’ como o tipo de código na lista de opções que aparecem na tela.

Escolhendo snippet PHP no WPCode

Em seguida, você pode adicionar um título para o seu snippet, que pode ser qualquer coisa para ajudá-lo a lembrar para que serve o código.

Depois disso, cole o código acima na caixa ‘Visualização do Código’.

Cole o código para excluir posts fixos do loop no WordPress

Por último, basta alternar o interruptor de ‘Inactive’ para ‘Active’ e clicar no botão ‘Save Snippet’.

Ative e salve o trecho no WPCode

Excluir Completamente Posts Fixos do Loop

Em seguida, se você estiver usando posts fixos em um plugin de slider, às vezes você pode querer excluir completamente seus posts fixos do loop.

Simplesmente adicione o seguinte trecho de código ao seu arquivo functions.php ou a um plugin de snippets de código:

<?php
 
// The loop arguments
$args = array(
    'posts_per_page' => 10,
    'post__not_in' => get_option( 'sticky_posts' ) // do not display the sticky posts at all.
);
 
// The loop
$the_query = new WP_Query($args);
if ($the_query->have_posts()) {
    while ($the_query->have_posts()) {
        $the_query->the_post();
 
         }
}

Este código não exibirá nenhum post fixo no loop de posts.

Você pode seguir os mesmos passos acima para adicionar este código usando o plugin WPCode.

Para mais dicas sobre como modificar temas do WordPress, confira nosso Guia de Referência de Temas do WordPress para iniciantes.

Esperamos que este artigo tenha ajudado você a aprender como excluir posts fixos do loop no WordPress. Você também pode querer ver nosso guia sobre como mostrar ou ocultar widgets em páginas específicas do WordPress e nossas escolhas de especialistas dos 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.

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

12 CommentsLeave a Reply

  1. I am having similar issue with the broken pagination when removing the sticky post, does anyone has a fix thanks

  2. I am having a problem that the one “sticky” post shows up as the first “featured” post so there is the same article listed twice in succession. Any help would be great.

  3. Don’t know if this happened for anyone else, but using this broke the pagination. My next page of posts would be a repeat of the first page. If this happened to anyone else, do you have a fix?

  4. Thank you so much, just because i am totally wpBeginner i came to this site and my WP development solved.

    ~agus~

  5. Ambos os métodos quebraram minha paginação (os links da página ainda estão lá, mas carregam sempre os mesmos posts), alguma ideia sobre isso?

  6. Isso é realmente ótimo. Um lugar onde você não precisa disso é ao criar um widget de barra lateral personalizado para exibir posts recentes.

    Obrigado.

  7. Existe alguma razão para que adicionar isso remova a funcionalidade dos links de arquivos e nuvem de tags? Eu também estou tentando excluir posts fixos do meu loop principal usando um loop para operar uma seção em destaque e um segundo para operar todo o resto. O problema que estou tendo ocorre quando clico em links em uma seção de arquivo ou nuvem de tags. Ele me redireciona de volta para a minha primeira página novamente. Quando eu removo este código de exclusão, funciona perfeitamente. Não consigo descobrir isso.

  8. você também pode usar pre_get_posts para não ter que alterar seu loop principal.

    $query->set(‘post__not_in’, get_option(‘sticky_posts’));

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.