Um problema que muitos sofrem é a paginação dos posts quando se altera um Loop no WordPress. Por exemplo, geralmente usamos a função query_posts antes do Loop para que o WordPress mostre uma determinada categoria, ou uma determinada quantidade de posts. O problema é que quando usamos o query_posts, o WordPress é afetado, e assim a paginação não funciona corretamente. O usuário clica em “Próximos Posts”, e ele repete os mesmo posts novamente.

A solução é incluir um código no Loop, que irá fazer a paginação funcionar corretamente.

Primeiro, entre em uma das páginas do seu tema (index.php por exemplo). Localize no Loop, o código:

<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>

Se você adicionou o query_posts, ele deve está algo assim:

<?php query_posts(’cat=10&showposts=6′); ?>
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>

Para solucionar o problema, substitua o código por:

<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; ?>
<?php query_posts("cat=10&showposts=6&paged=$paged"); ?>
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>

* Nota: É importante que você mantenha as aspas na função query_posts, pois só assim ele irá funcionar.

E está pronto!

Nenhum comentário em “Resolvendo problemas de paginação no WordPress”

  1. Faça um comentário preenchendo o formulário ao lado.