Como inverter a ordem dos posts nas categorias do WordPress

Por padrão, o WordPress exibirá uma lista de posts em ordem cronológica do mais recente para o mais antigo. Isso significa que, quando alguém clicar em uma página de categoria, verá o último artigo escrito em primeiro lugar, seguido pelo penúltimo etc. Algo inteligente se for um blog de notícias ou atualidades, por exemplo. No entanto, nem sempre esta será a melhor alternativa para um projeto no WordPress.

Há casos em que o primeiro artigo escrito sobre o assunto é o mais interessante, sendo necessário alterar a ordem cronológica, deixando-a ascendente, para as páginas de categorias fazerem mais sentido ao leitor. Nesta hora, então, entra o pedaço de código abaixo para ser inserido no functions.php de seu tema.

É preciso que tenha um arquivo archive.php em seu tema. Caso ele não exista, duplique o index.php e renomeie para archive.php. A solução estava no fórum do WP.

Código para alterar a lista no archive.php

// Runs before the posts are fetched
add_filter( 'pre_get_posts' , 'my_change_order' );
// Function accepting current query
function my_change_order( $query ) {
// Check if the query is for an archive
if($query->is_archive)
// Query was for archive, then set order
$query->set( 'order' , 'asc' );
// Return the query (else there's no more query, oops!)
return $query;
}

Deixe seu comentário