Como listar posts de uma categoria no WordPress, filtrando pelo nome ou ID.
Mostrar posts de uma categoria no WordPress
Você pode fazer essa consulta de diversas formas, neste post iremos abordar a consulta pelo nome ou ID.
Para buscar os Posts iremos utilizar a classe WP_Query
WP_Query é uma classe que está localizada em wp-includes/class-wp-query.php que lida com as complexidades da solicitação de uma publicação (ou página) para um blog do WordPress.
Pelo Nome:
Utilize esta opção apenas em casos específicos aonde a busca pelo nome realmente se faz necessária.
$query = new WP_Query( array( 'category_name' => 'nome da categoria' ) );
Pelo ID:
Sempre utilize o ID em seu código, pois o nome da categoria pode ser mudado, inutilizando a sua customização.
$query = new WP_Query( array( 'cat' => 4 ) );
Mostrando o resultado
Uma vez realizado a consulta, listamos os Posts retornados.
if ( $query->have_posts() ) : while ( $query->have_posts() ) : $query->the_post(); get_title(); // the_permalink(); endwhile; else : echo 'No posts'; endif;
Posts na página da Categoria
Para listar os posts de uma determinada categoria em sua própria página, utilize:
$args=array( 'cat' => get_query_var('cat'), 'orderby' => 'title', 'order' => 'ASC', 'posts_per_page'=>-1, 'caller_get_posts'=>1 ); $my_query = new WP_Query($args);