Home Ajuda Pesquisa Login Registre-se
 
Bem-vindo, Visitante. Por favor faça o Login ou Registre-se.
Perdeu o seu email de activação?

Login com nome de usuário, senha e duração da sessão
 
Notícias: O fórum está ainda começando, mas já temos uma comunidade atuante. Registre-se e participe!
 

Páginas: [1]
  Imprimir  
Autor Tópico: Tutorial: Resolvendo problemas de paginação no WordPress  (Lida 4805 vezes)
Administrador Fórum do Software
Administrador
Membro Jr.
*****
Mensagens: 75


Ver Perfil
« : 22 de Janeiro de 2010, 10:46 »

Muitas pessoas tem uma dúvida referente à paginação de seus blogs/sites, quando modificam o Loop para customizá-lo. Por exemplo, é comum utilizar o query_posts antes do Loop para que ele mostre posts apenas de uma determinada categoria. Entretanto, isso pode acabar prejudicando a capacidade do WordPress de saber em que página ele está, e assim quando o usuário clica em “Próximos Posts”, ele acaba vendo os mesmos posts repetidos novamente.

Felizmente, a solução é simples. No arquivo apropriado (normalmente home.php ou index.php), localize o Loop. Ele deve começar com alguma coisa assim:

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

Como seu loop está customizado, ele deve estar mais ou menos assim:

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

Para resolver seu problema de paginação, acrescente o seguinte:

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

Lembre-se que é importante que as aspas sejam duplas no query_posts, pois só assim ele vai reconhecer o $paged como uma variável, e não como um texto qualquer.

Pronto! Assim seu WordPress vai saber em que página está, e seus problemas estarão resolvidos.
Registrado
lucicaroline
Novato
*
Mensagens: 1


Ver Perfil
« Responder #1 : 25 de Julho de 2011, 09:33 »

Olá, eu fiz uma pagina para o portfolio, e estou com problemas de como paginá-la.
Eu segui este tuto, mas o meu código está um pouco diferente:

<?php /* Template Name: Portfolio */ ?>
<?php query_posts('cat=29');?>

<?php
get_header();

   if (have_posts()) :
   while (have_posts()) :
   the_post();
   include (TEMPLATEPATH . '/loop.php');

   endwhile;
if ( $wp_query->max_num_pages > 1 ) { dld_pagination(); }
   endif;   
   
   

get_footer();
?>


Este é o código da page-portfolio.php que criei.  Aparece a páginação na página, mas quando eu clico pra muder, ela não muda.
Por favor, me ajudem!
Registrado
Páginas: [1]
  Imprimir  
 
Ir para: