Problema com Paginação do WordPress
-
Olá, boa tarde!
Eu criei minha front-page puxando todos os posts e gostaria de fazer uma paginação que exibiria em cada página apenas 8 posts e passaria para a próxima, seguindo essa linha de 8 posts em cada uma.
Utilizei um plugin de paginação chamado “WP-Paginate”, a paginação funciona e é visível a troca de página na url, mas meus posts não trocam, a pagina está mostrando sempre o mesmo conteúdo.
-
Olá @gustavospindola,
se a paginação não funciona, muito provavelmente o Loop que você criou não dá suporte ao plugin.
Além disso, você não precisa de nenhum plugin, pois a paginação é uma feature nativa do WordPress.Você pode criar sua lógica de paginação com as funções nativas e há um artigo no Codex falando sobre isso:
https://codex.wordpress.org/Pagination
Caso ainda não consiga, dê uma olhada na documentação da WP_Query (provavelmente está usando ela para criar o Loop).
Abraços
Consegui resolver, era um erro na lógica do loop mesmo… obrigado!
Abraços
Olá, ja dei uma lida na documentação, e o mesmo continua dando o mesmo problema acima,
ele repete os posts nas outras páginas.<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $terms_args = array( 'hide_empty' => false, 'post_type' => array('post','page','edicoes','vencedores','realizacoes'), 's' => $s, 'page' => $paged, 'posts_per_page' => 8 ); $terms = new WP_Query($terms_args); ?> <?php if(!empty($terms)): ?> <?php if($terms->have_posts()): ?> <?php while($terms->have_posts()): $terms->the_post(); ?> <div class="col-md-12 col-xs-12 border"> <div class="title-search"> <a href="<?php the_permalink(); ?>"> <h1><?php the_title(); ?></h1> </a> </div> <div class="col-md-6 col-xs-6"> <div class="img-post"> <a href="<?php the_permalink(); ?>"> <?php if (get_the_post_thumbnail()){ the_post_thumbnail(); }else{ } ?> </a> </div> </div> <div class="col-md-6 col-xs-6"> <div class="resume"> <a href="<?php the_permalink(); ?>"> <?php echo excerpt('25'); ?> </a> </div> </div> </div> <?php endwhile; ?> <?php endif; ?> <?php endif; ?> </div> <div> <?php get_template_part('template-parts/content','widget-home'); ?> </div> </div> <div class="row"> <div class="container"> <div class="col-md-12 page"> <?php wp_pagination(); ?> </div> </div> </div>
Isso é da minha page Search, se alguém puder me ajudar.
Vlw
Gente, estou com quase o mesmo erro.
Desejo que ele a cada 15 posts crie uma nova pagina e deposito que ele apenas execute as opções ANTERIOR e PROXIMO.quando ativo o plugin “WP-Paginate” e marco a opção para aparecer na HOME ele aparece lá em cima e nao onde desejo e quando eu clico em pagina 2 ou 3 ele sempre me mostra os mesmos posts ou seja os 15 ultimos.
alguém pode me ajudar?
segue os arquivos.
<!– INDEX –>
<div id=”wrap” class=”mobile-news”><!– LIMITAR POSTS –>
<?php query_posts(‘cat=2,56,4,1,5,53,3,55’); ?><?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<div class=”box-news”>
<div class=”img-news”>
“>
<?php the_post_thumbnail(); ?><?php
//Pega todas as categorias do post
$cats = get_the_category($post->ID);
//Verifica a primeira categoria retornada e pega seu parentesco.
//Se um post tem múltiplas categorias que levam a parentescos separados, retornará o primeiro parentesco pertencente à primeira categoria retornada.
$parent = get_category($cats[0]->category_parent);
//Se obtiver uma mesnagem de erro, significa que já estamos na categoria-pai.
if (is_wp_error($parent)){
$cat = get_category($cats[0]);
}
//Senão, atribui a categoria retornada para trabalhar equivalente a uma categoria-pai.
else{
$cat = $parent;
}?>
<div class=”<?php echo $cat->slug; ?>”><?php the_category(); ?></div>
</div>
<span><?php the_date(); ?> – <?php the_author(); ?></span>
<h1><?php the_title(); ?></h1></div>
<?php endwhile; ?>
<?php endif; ?>
</div><!– FINAL DA PROGRAMAÇÃO PARA MOBILE –>
<div id=”navegacao”>
<div class=”anteriores”><?php previous_posts_link( “« Posts Anteriores” ) ?> < ANTERIOR </div>
<div class=”recentes” style=”margin-left: 100px;”><?php next_posts_link( “Posts Recentes »” ) ?> PROXIMA > </div>
</div>OBS: Ja experimentei usando <?php wp_pagenate(); ?>
<!– FUNCTION.JS –>
// No arquivo functions.php
function my_pagination() {
global $wp_query;echo paginate_links( array(
‘base’ => str_replace( 9999999999999, ‘%#%’, esc_url( get_pagenum_link( 9999999999999 ) ) ),
‘format’ => ‘?paged=%#%’,
‘current’ => max( 1, get_query_var( ‘paged’ ) ),
‘total’ => $wp_query->max_num_pages,
‘type’ => ‘list’,
‘prev_next’ => true,
‘prev_text’ => ‘Página Anterior’,
‘next_text’ => ‘Próxima Página’,
‘before_page_number’ => ‘-‘,
‘after_page_number’ => ‘>’,
‘show_all’ => false,
‘mid_size’ => 3,
‘end_size’ => 1,
) );
}por favor, alguem pode me ajudar?
- O tópico ‘Problema com Paginação do WordPress’ está fechado para novas respostas.