Nas Configurações de leitura, há um local para definir o número de postagens mostradas que afeta o número de postagens exibidas em todos os contextos. Em vez disso, gostaria de mostrar um certo número de postagens na página inicial e um número diferente de postagens em páginas como arquivo, resultados de pesquisa etc.
Sei que posso fazer isso editando os arquivos de tema e alterando os parâmetros de consulta, mas prefiro ter acesso mais fácil a uma página de configurações simples. Há muito tempo, deparei-me com um plugin que fazia isso, mas não consigo localizá-lo agora.
Alguém sabe de um plugin para fazer isso, ou mesmo uma função que eu poderia colocar em functions.php para realizar a mesma coisa?
Respostas:
Acredito que a melhor maneira de fazer isso em um plug-in é executar a seguinte função de exemplo quando o
pre_get_posts
gancho de ação for encontrado. O$wp_query
objeto está disponível, o que significa que suas tags condicionais estão disponíveis, mas antes que o WordPress obtenha as postagens, o que significa que você está alterando os vars de consulta antes da execução da primeira consulta, em vez de adicionar uma segunda consulta, como quando query_posts () é usado em um tema Arquivo.fonte
você pode fazer um loop personalizado usando query_posts e especificar o número de postagens de is_home, is_archive etc.
apenas uma instrução if simples, juntamente com query_posts
fonte
query_posts
seu tema, ignorará a consulta original e fará outra redundante.Para adicionar a esta pergunta. Alguém sabe como determinar post_per_page para esta função function custom_posts_per_page ($ query) se adicionar a nova página ao index.php assim:
fonte
No interesse da integridade, descobri que
query_posts
combinado com$query_string
concatenação funciona bem.Coloquei esse código
index.php
(meu tema não tem category.php) ...Obviamente, o que estamos fazendo aqui é modificar a string de consulta interna do loop, substituindo o número padrão de postagens por página .
É uma delícia fornecer uma lista menor de postagens na página inicial, onde estou mostrando postagens completas, e uma lista muito maior de postagens em qualquer outro lugar (categorias, por data, etc.), onde apenas mostro resumos de postagens.
No entanto, observe que, diferentemente da resposta aceita, a consulta será executada duas vezes , portanto, não é uma solução tão boa.
fonte