Recentemente, um visitante no Fórum perguntou como obter resultados da procura em ordem alfabética. EIs a solução para isso:
O arquivo do tema search.php possui um loop, isso quer dizer que podemos modificá-lo para que os resultados da procura sejam ordenados de maneiras diferentes, excluam certa categorias etc.
No nosso exemplo, vamos organizar os resultados em ordem alfabética, ascendentes (A, B, C…). Abra o arquivo search.php e logo apóa a linha que contem have_posts
, adicione o seguinte:
'title', 'order'=>'ASC','posts_per_page' => 5, 'paged' => $paged ) ); ?>
Sobre o código e paginação
- orderby: aceita vários tipos de ordenação como nenhum, ID, autor, título (o que estamos usando), data, data de última modificação, etc
- order: só pode ser ASCendente (1, 2, 3… ou A, B, C…) ou DEScendente (3, 2, 1… ou …C, B, A).
- post_per_page: quantas postagens mostrar por página.
Todos já devem ter passado um bom tempo tentando usar query_posts e manter a paginação ao mesmo tempo, o fato é que é preciso uma instrução extra para que a paginação não se perca e que muitas pessoas estavam usando o termo errado (page
em vez de paged
), segundo a documentação:
Nota sobre a paginação: Você deve definir get_query_var( 'page' ); se quer que a paginação funcione. Desde o WordPress 3.0.2, as pessoas têm usado get_query_var( 'page' ) em vez de get_query_var( 'paged' ). O parâmetro de paginação
paged
para oquery_posts()
continua o mesmo.
Saiba mais sobre esta funação consultando o Codex.
Temas que refereciam um loop centralizado
Como é o caso do tema padrão. Este temas são adaptados para usarem temas-filhos, que são modificações que podemos fazer sem alterar o tema diretamente.
Neste caso, o mais sensato a fazer é criar um loop novo para usar o código acima, desde que estamos personalizando os resultados da procura, arquivamento etc por que querer manter o uso do loop centralizado?
Neste caso, podemos criar uma página de resultados de procura totalmente nova, com formatação apropriada, por exemplo, usar listas que só apresentam o título e a data da postagem, em lista numerada.
É isso! Espero que todos estejam aliviados de ter a paginação de volta com dica acima!
Sem estresse!
Precisa de ajuda com seu WordPress?
Entre em contato