• Boa noite

    Estou tentando fazer uma paginação de uma chamada de alguns posts em uma página, peguei um código pronto em um site mas não consigo fazer funcionar

    No functions.php colei este código:

    function wordpress_pagination() {
                global $wp_query;
     
                $big = 999999999;
     
                echo paginate_links( array(
                      'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
                      'format' => '?paged=%#%',
                      'current' => max( 1, get_query_var('paged') ),
                      'total' => $wp_query->max_num_pages
                ) );
          }
    

    e na página a chamada está acontecendo da seguinte forma:

          <?php the_content();?>
    
              <?php 
                                      $posts_slides = new WP_Query(array(
                                          'category_name' => 'fornecedores',
                                          'orderby' => 'rand',
                                          'posts_per_page' => 20
                                          
                                        ));
                                        while($posts_slides -> have_posts()) : $posts_slides -> the_post();
                                       ?>
    
    
                      
              <div class="col-md-6 page-fornecedores">
                    "><?php the_post_thumbnail('img-page-fornecedores', array('class' => ' img-responsive acende center-block'))?>
                <div class="thumbnail">
                    "><h3><?php the_title();?></h3>
                    <p class="visible-lg"><?php  echo cropText(rwmb_meta('resumo'), 200);?> </p>
                </div>
              </div>
    
                    <?php  endwhile; wp_reset_postdata(); ?>
    <?php my_paginate_links()?>
    

    Estou listando os 20 posts da categoria fornecedor, não sei se o erro seria ali na chamada dos posts, se alguem puder me ajudar agradeço muito.

Visualizando 2 respostas - 1 até 2 (de um total de 2)
  • Páginas não são adequadas para paginação.

    Dê uma olhada em Hierarquia de Temas do WordPress:
    https://codex.wordpress.org/pt-br:Hierarquia_de_Modelos_WordPress

    Moderador Claudio Sanches

    (@claudiosanches)

    O seu código é praticamente correto, entretanto esta usando global $wp_query; para uma query personalizada e ainda colocando sua função depois de resetar a query, então no lugar de paginar sua query, esta paginando a página atual…

    Entretanto por padrão categorias já vai ter paginação, não é necessário fazer isso manualmente.
    Se quer apenas modificar a query na página categoria fornecedores é possível fazer isso utilizando o hook pre_get_posts.

Visualizando 2 respostas - 1 até 2 (de um total de 2)
  • O tópico ‘Páginação sem pluguin’ está fechado para novas respostas.