Suporte » Plugins » PageNavi não funciona

  • Resolvido LucasMorato

    (@lucasmorato)


    Olá Pessoal,

    Segui este tutorial para uma pagina de portfolio para meu thema, porém faltou uma coisinha só, a paginação.

    Link: http://wp.tutsplus.com/tutorials/creating-a-filterable-portfolio-with-wordpress-and-jquery/

    O problema é que tentei adicionar o plugin WP-paginavi no final da pagina e não funcionou.
    Na verdade não aparece nada quando insiro o código:

    <?php if(function_exists('wp_pagenavi')) {
    wp_pagenavi();
    } ?>

    Na pagina de blog funciona normalmente.
    Alguém sabe se falta mais alguma coisa?
    Meu arquivos estão igualzinhos ao do tutorial praticamente.
    Obrigado!

Visualizando 11 respostas - 1 até 11 (de um total de 11)
  • Dá uma olhada aqui:
    http://forumdosoftware.com/index.php?topic=1431.0

    Vc tem que fazer uma pequena modificação na sua query do Loop para o WP “saber” em que página ele está.

    Criador do tópico LucasMorato

    (@lucasmorato)

    Entendi, o problema é que meu loop ta diferente do do tutorial.
    Ele está assim:

    <?php if ( $loop ) :
     while ( $loop->have_posts() ) : $loop->the_post(); ?>

    Como vai ficar meu código?

    Na verdade a modificação é feita na query, que vem um pouco antes do loop. Olha os parâmetros que são passados no seu caso, e o parâmetro relativo à pagina que tem que ser adicionado, no tutorial.

    Criador do tópico LucasMorato

    (@lucasmorato)

    Ainda nao consegui renato :/

    Coloca o código do seu loop aqui, com a query, pra gente dar uma olhada.

    Criador do tópico LucasMorato

    (@lucasmorato)

    A paginação está aparecendo, mais quando eu clico em pagina 2 ele até vai para a pagina 2 mais aparece os mesmo loops da primeira

    <div id="content" role="main">
    			<div class="menu-list-port">
    
    			<?php
    				 $terms = get_terms("tagportfolio");
    				 $count = count($terms);
    				 echo '<ul id="portfolio-filter" style="float:right;">';
    				 echo '<li><a href="#all" title="">All</a></li>';
    				 if ( $count > 0 ){
    
    						foreach ( $terms as $term ) {
    
    							$termname = strtolower($term->name);
    							$termname = str_replace(' ', '-', $termname);
    							echo '<li><a href="#'.$termname.'" title="" rel="'.$termname.'">'.$term->name.'</a></li>';
    						}
    				 }
    				 echo "</ul>";
    			?>
    
    			<?php
    				$portfolio = new WP_Query(array('post_type' => 'project', 'posts_per_page' => 4));
    				$count =0;
    			?>
    			</div>
    
    			<div id="portfolio-wrapper">
    				<ul id="portfolio-list">
    
    				<?php if ( $portfolio ) : 
    
    					while ( $portfolio->have_posts() ) : $portfolio->the_post(); ?>
    
    						<?php
    						$terms = get_the_terms( $post->ID, 'tagportfolio' );
    
    						if ( $terms && ! is_wp_error( $terms ) ) :
    							$links = array();
    
    							foreach ( $terms as $term )
    							{
    								$links[] = $term->name;
    							}
    							$links = str_replace(' ', '-', $links);
    							$tax = join( " ", $links );
    						else :
    							$tax = '';
    						endif;
    						?>
    
    						<?php $infos = get_post_custom_values('_url'); ?>
    
    						<li class="portfolio-item <?php echo strtolower($tax); ?> all" style="clear:both;">
    							<div class="thumb-port span6" style="margin-right: 20px; margin-top: 10px; margin-bottom: 50px;">
    
    							<!-- Hover Image -->	
    
                                        <div class="image-box" style="margin-bottom: 5px;">
    
                                            <div class="image-box-hover">
                                                <?php the_post_thumbnail('large');?>
    
                                                <div class="image-wrapper-hover">
                                                    <div class="mask-hover">
    
                                                        <span class="zoom-left-port1">
    													<?php $full_image = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'full'); ?>
    													<a href="<?php echo $full_image[0]; ?>" rel="prettyPhoto[pp_gal]" title="At vero eos" class="info"><img src="wp-content/themes/Twilight/images/zoom-icon.png" /></a></span>
    
                                                        <span class="link-right-hover">
    													<a href="<?php the_permalink(); ?>" class="info"><img src="wp-content/themes/Twilight/images/link-icon.png" /></a></span>
                                                    </div>
    
    												<h4 class="title_box_image-hover "><?php the_title(); ?></h4>
                                                    <h6 class="sub_title_box_image-hover "><?php echo get_the_term_list($post->ID, 'tagportfolio', '', ', ', ''); ?></h6>
    
                                                </div>
                                            </div>
                                        </div>
    
    								<!-- End Hover Image -->	
    
    							</div>
    							<div class="content-port">
    							<h2 style="margin:0px;"><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></h2>
    							<p class="sub-title"><?php echo get_the_term_list($post->ID, 'tagportfolio', '', ', ', ''); ?></p>
    							<p class="excerpt"><a href="<?php the_permalink() ?>"><?php echo get_the_excerpt(); ?></a></p>
    							<p class="links" style="margin-top: 15px;"><a href="<?php echo $infos[0]; ?>" target="_blank" class="btn_orange_tw">View Projects</a> <a href="<?php the_permalink() ?>" class="btn_orange_tw">Learn More</a>  </p>
    							</div>
    
    						</li>
    
    					<?php endwhile; ?>
    
    					<div class="pagination-content aligncenter" style="text-align:center;">
    					<?php kriesi_pagination($portfolio->max_num_pages, $range = 2); ?>
    					</div>
    
    					<?php else: ?>
    
    					<li class="error-not-found">Sorry, no portfolio entries for while.</li>
    
    				<?php endif; ?>
    
    				</ul>
    
    				<div class="clearboth"></div>
    
    			</div> <!-- end #portfolio-wrapper-->

    Tenta fazer a seguinte modificação:

    Troque:
    $portfolio = new WP_Query(array('post_type' => 'project', 'posts_per_page' => 4));

    Por:

    $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
    $portfolio = new WP_Query(array('post_type' => 'project', 'posts_per_page' => 4,'paged'=>$paged));

    Criador do tópico LucasMorato

    (@lucasmorato)

    Grandeeeeeeeeee!!!! Funcionou cara! Se não for pedir muito, oque vc fez? hehehe

    Valeu 🙂

    Quando vc acessa uma página qualquer do seu blog, o WP executa a consulta ao banco de dados para recuperar as informações pertinentes. Nessa consulta, vários parâmetros são definidos automaticamente, sem que a gente veja. Por isso nos temas normalmente não aparece a query.

    Quando a gente decide personalizar uma query dessas, a gente acaba “apagando” os dados da query original, e só o que estiver definido na nova query é que fica valendo.

    Então, com a nova query o WP não sabe mais em qual página ele está, porque isso era uma informação que estava na query original. A modificação sugerida fez exatamente isso: incluir um parâmetro na query que diz ao WP qual página ele deve buscar.

    Se não fizer isso, ele adota sempre o valor default, que é a página 1.

    Criador do tópico LucasMorato

    (@lucasmorato)

    Muito legal sua explicação! Entendi direitinho!
    Só mais uma perguntinha, vc sabe como coloco um botão de next do lado dos numeros da minha paginação, mais em forma de imagem?
    Tipo, ta assim:

    1 2 3 4

    Dai quero colocar uma imagem de next tipo:

    1 2 3 4 [imagem-next]

    Se não for pedir muito, valeu !

    Criador do tópico LucasMorato

    (@lucasmorato)

    Consegui aqui valeu!

Visualizando 11 respostas - 1 até 11 (de um total de 11)
  • O tópico ‘PageNavi não funciona’ está fechado para novas respostas.