Publicidade 

Exibindo a lista dos artigos da próxima página

SOS Wordpress

Lu

O get_posts é ótimo mesmo - é a função que uso para gerar a lista de artigos mais recentes, coisa que fazia com plugin antigamente. Só fiquei frustrada quando tentei sem sucesso usar a função para criar uma lista de “artigos na página seguinte”, como no blog do Fábio Seixas.

O Fábio, usa o Movable Type , e não o Wordpress, uma pesquisada rápida no Google e não achei nenhum plugin pronto para isso no WP.

Mas como havia falado com a Lu, sabia que era possível.

Pesquisando outra coisa no codex, me veio a luz de como fazer.

Existe um parâmetro para o query_posts chamado offset, que indica, a partir de quantos artigos deve começar a contagem do limite a ser exibido.

Tentei usar esse mesmo parâmetro no get_posts e funcionou corretamente.

Para exibir a lista de artigos da próxima página, é necessário colocar o código abaixo na sidebar:

PHP:
<?php if (is_home()) { ?>
<h2>Próxima Página</h2>
<ul>
<?php $pp_posts = get_posts('offset=5&numberposts=5'); foreach($pp_posts as $post) : setup_postdata($post);
?>
<li><a href="<?php the_permalink() ?>" rel="bookmark" title="Link para <?php the_title(); ?>"><?php the_title(); ?></a></li>
<?php endforeach; ?>
</ul>
<?php } ?>

O código acima, exibirá a lista de 5 artigos começando a contar depois do 5º, em relação ao loop atual.

Coloquei para exibir só na home, mas a restrição pode ser removida e exibir a lista em todas as páginas, apagando as primeira e a última linha.

Escolhi 5, pois é o número de artigos que eu exibo em cada página, basta alterar o valor para o número de artigos exibidos por página.

Para quem utiliza o Sidebar Widgets, pode usar o Widgetize Anything e colocar o código abaixo:

PHP:
echo '<ul>';
$pp_posts = get_posts('offset=5&numberposts=5');
foreach($pp_posts as $ppost) {
    setup_postdata($ppost);
    echo '<li><a href="' . get_permalink($ppost->ID) . '" rel="bookmark" title="Link para ' . $ppost->post_title .'">'. $ppost->post_title . '</a></li>';
};
echo '</ul>';


Ainda restam várias perguntas a serem respondidas.
Adorei a receptividade à novidade, espero poder contribuir respondendo a todas as perguntas.
Se sua pergunta ainda não foi respondida, fique atento, que em breve será.
Para quem tem alguma dúvida sobre Wordpress, seja ela qual for, basta usar a página SOS Wordpress para isso.

[tags]Wordpress,Hacking,PHP,Artigos,posts,páginas,navegação,SOS Wordpress[/tags]

Compare Preços de: Camera Digital, MP3 Player, iPod, Celular, Livros, CD, DVD, Monitor, TV, Notebook, Wii, PS2, PS3

Compartilhe e Guarde: Esses links facilitam a inclusão deste artigo nas redes sociais. Compartilhe.
  • Rec6
  • StumbleUpon
  • ueba
  • linkk
  • dihitt
  • linkloko
  • websapiens
  • linkto
  • Technorati
  • Simpy
  • del.icio.us
  • Blue Dot

Artigos relacionados







10 Comentários »

Comentário por Rodrigo Fante
2007-06-21 04:32:34

muito bom!!!

 
Comentário por Anderssauro
2007-06-21 05:16:55

Estou pensando em ir pro WP, essas dicas valerão muito

 
Comentário por Lu
2007-06-21 11:29:47

Tentei por aqui, tanto no index.php (fora do loop, claro) quanto no sidebar, mas não apareceu a lista de posts...

 
Comentário por Bruno Alves
2007-06-21 12:36:21

Rodrigo, obrigado.

Anderssauro, verá uma diferença enorme :).

Lu, qual o erro que acontece?

Consegui fazer funcionar tanto no Diversos quanto por aqui.

Abraços

 
Comentário por Tonobohn
2007-06-21 15:37:14

No Oito Passos também não funcionou. Não dá erro nenhum, apenas não aparece a lista de posts.

 
Comentário por Tonobohn
2007-06-21 16:01:53

Bruno, é um erro simples nessa linha:

" rel="bookmark" title="Link para ">

Aqui deixei assim:
">

Só faltou o link antes de fechar a tag :-)

 
Comentário por Tonobohn
2007-06-21 16:04:07

Argh... como faço pra inserir código php nos comentários? Droga...

Enfim ... é só adicionar o php the_title(); antes de fechar a tag . Está no lugar errado :-)

Se puder edite o comentário acima!

Abraço

 
Comentário por Bruno Alves
2007-06-21 19:16:29

Tonobohn, já acertei o código, valeu pela dica.

Quando passei do Widgetize Anything (que é o que eu uso) para o método tradicional, esqueci de adicionar o the_title.

Quanto ao código o WP comeu.

Para postar código PHP nos comentário precisa colocar entre [ PHP ] e [ /PHP ] (sem os espaços).

Abraço

 
Comentário por Luiz Aquino
2007-06-22 12:03:21

Oi Bruno, muito bacana a solução, utilizo a algum tempo, é muito bom para separar os assuntos por ordem de prioridade dando destaque a uns e outros...

Suas dicas são muito boas

Abraços e sucesso...

 
Comentário por Bruno Alves
2007-06-22 13:16:50

Luiz, obrigado.

 
Nome
Email
Site
Seu Comentário (menor | maior)
Você pode usar: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> e [CODE] [/CODE] em seu comentário.