Suporte » Desenvolvendo com WordPress » Problema com Paginação

  • Estou criando um portal de notícias, no meu index estão aparecendo 10 notícias… eu criei outro template para a “sessão” news e lá eu estou pegando dá 11º em diante… eu estava tendo dificuldades para resolver e achei esse código

    <ul>
    <?php
    global $post;
    $args = array( 'numberposts' => 5, 'offset'=> 11 );
    $myposts = get_posts( $args );
    foreach( $myposts as $post ) :	setup_postdata($post); ?>
    	<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
    <?php endforeach; ?>
    </ul>

    Mas o problema agora é a paginação, como eu poderia resolver isso?
    Obrigado!

Visualizando 5 respostas - 1 até 5 (de um total de 5)
  • Tem alguma razão especial pra vc usar get_posts() ao invés de WP_Query nesse template?

    Como get_posts() retorna um array e não um objeto, ele não guarda nenhuma informação sobre qual página está sendo visualizada. Aí a paginação teria que ser feita puxando manualmente o valor $_GET, etc.

    A alternativa é usar:

    $news = new WP_Query(array(
        'posts_per_page' => 5,
        'offset' => 11,
        'paged' => get_query_var( 'page' )
    ))
    
    while($news->have_posts()) : $news->the_post(); ?>
        <li>
            <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
        </li>
    <?php endwhile;

    combinado com as funções next_posts_link() e previous_posts_link().

    Criador do tópico bdmmoreira

    (@bdmmoreira)

    muito obrigado! funcionou o código que você me passou, mas ainda estou com o problema da páginação

    eu coloquei o next_posts_link() e previous_posts_link(). e até o <?php wp_pagenavi(); ?> com o plugin instalado, mas não está mostrando as outras páginas mesmo tendo posts para serem mostradas

    sou meio ignorante sobre wordpress ainda e não tenho idéia do que possa estar occorendo

    não mostra os links? ou mostra e vai pra página errada?

    Criador do tópico bdmmoreira

    (@bdmmoreira)

    mostra os links dos posts que tão no showposts dessa primeira página, mas não mostra a paginação pra ir pras outras páginas…

    Criador do tópico bdmmoreira

    (@bdmmoreira)

    agora eu coloquei e a paginação apareceu(não sei se está certo), mas quando você clica na página 2 ou 3 etc não vai pra ela

    <?php $news = new WP_Query(array(
        'posts_per_page' => 5,
        'offset' => 11,
        'paged' => get_query_var( 'page' )
    )); ?>
    
    <?php while($news->have_posts()) : $news->the_post(); ?>
        <li>
            <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
        </li>
    <?php endwhile; ?>
    
    <?php wp_pagenavi(array( 'query' => $news ) ); ?>
Visualizando 5 respostas - 1 até 5 (de um total de 5)
  • O tópico ‘Problema com Paginação’ está fechado para novas respostas.