
Usar múltiplos loops no WordPress é uma tarefa quase corriqueira para mim já, uma homepage um pouco mais complexa já usa 2 ou 3 loops.
As vezes acontece de algum loop não funcionar como esperado, duplicar posts é apenas uma das coisas desagradáveis que podem acontecer. Mas não se desespere, a um codigo concerta isso, e vamos mostra-lo aqui no HOTPress agora.
O exemplo a seguir apresenta dois loops diferentes. Observe que uma função é usada entre eles ‘rewind_posts ()‘ é quem faz a mágica acontecer. Este exemplo pode ser usado em qualquer arquivo WordPress como: index.php, single.php, page.php, tags.php e etc.
// Primeirp loop (Puxa os últimos 3 posts da categoria notícias)
<?php query_posts('category_name=noticias&showposts=3'); ?>
<?php while (have_posts()) : the_post(); ?>
<!-- Seu código aqui -->
<?php endwhile;?>
//Essa linha limpa o loop, para o próximo ter as caracteristicas originais do WordPress
<?php rewind_posts(); ?>
//Segundo loop (Este é um loop comum que lista todos últimos posts)
<?php while (have_posts()) : the_post(); ?>
<!-- Seu código aqui -->
<?php endwhile; ?>
Explicando o código
A função ‘rewind_posts ()‘ não é um hack como alguns podem estar pensando, ela já é padrão do WordPress a algumas versões.
O proposito da função é “limpar” um loop “sujo” como o primeiro listado no nosso exemplo, assim o segundo loop utiliza não é afetado pelas funções do primeiro, utilizando as funções padrão do WordPress.
Tem alguma sugestão de postagem? Deixe um comentário! =D


Bom dia, desculpe não saber se é aqui que se faz esse tipo de pergunta
Estou com o WP 2.8.5 com canal de notícias quase pronto, porque vou usar ele como CMS pra atualização de conteúdo, creio que seja por loop o que quero fazer… a index vai ficar fora do diretorio do WP, nessa index fora o lay foi dividido por categorias os espaços, esportes, brasil, F1 etc… … como faço pra chamar os posts das categorias fora do diretório do WP?
Olá Denny,
não entendi o que você quis dizer com fora do Diretório.
Sua Index deve ficar dentro do arquivo do seu tema.
Se a sua index está dentro da pasta do tema basta chamar os loops como explicado no post.
Se não for isso, por favor nos dê uma nova explicação para te auxiliarmos =)
[']s
Em primeiro, obrigado pela resposta… é que vou fazer da seguinte forma… eu já tenho o site em funcionamento que tem um sistema de atualização que já não está aguentando o tranco.. nesse caso, instalaei o WP pra usar como CMS… a parte de noticias em geral está ok no diretório (homeportal) com o template, já na index que nao está no diretório o template é outro e muito grande e sempre usei template diferentes na index e outro para os posts.. são totalmente diferente um do outro… eu peguei o meu template e instalei no WP e joguei os loops, funciona.. mas queria chamar esse loop fora do diretório, pq se por minha index dentro sem instalar, nao funfa… e nao descobri no WP como chamar o link em outro Template….e nisso quebrei a cuca pra tentar descobrir uma forma de isso acontecer… tentei tudo quanto é tipo de path pra funcionar o WP fora… acho que nao to sabendo qual arquivo puxar… tipo
Eu uso atualemente, independente do diretório assim, queria fazer isso com o WP
req['PHP_SELF'];
$system = new system_Noticias;
?>
Ops.. o cod cortou no post anterior
<!– req['PHP_SELF'];
$system = new system_Noticias;
?> –>
Cortou de novo… quando envio o cod .. são tres linhas.. mas nao tá indo pra vc ver
Interessante. Não uso muito o query_posts( ), uso geralmente o get_posts( ), mas o primeiro parece ser bem interessante…
necessario verificar:)
amigo, olha só , eu tenho esse site em wp, e queria colocar uma e-commerce, ai baixei um thema e fiz ele assim: http://www.agromundo.com.br/shopping, o admin entra mas o naum puxa o index, oque eu faço, pode me ajudar.?