Created
June 26, 2012 12:35
-
-
Save tcelestino/2995571 to your computer and use it in GitHub Desktop.
pagination wordpress without plugin
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
function paglink($first=1,$last=1,$middle=10,$baseURL=false,$wp_query=false ) { | |
if(!$baseURL) $baseURL= get_bloginfo('url'); | |
if(!$wp_query)global $wp_query; | |
$page = $wp_query->query_vars["paged"]; | |
if ( !$page ) $page = 1; | |
$qs = $_SERVER["QUERY_STRING"] ? "?".$_SERVER["QUERY_STRING"] : ""; | |
if ( $wp_query->found_posts > $wp_query->query_vars["posts_per_page"] ) { | |
echo '<div class="box-paginacao">'; | |
if ( $page > 1 ) { | |
echo '<a href="'.$baseURL.(($page==2)?('page/'.($page-1).'/'):'').$qs.'" class="link-anterior">anterior</a>'; | |
} | |
else { | |
echo '<div class="anterior-sem-link">anterior</div>'; | |
} | |
$dots=false; | |
echo '<div class="paginas">'; | |
for ( $i=1; $i <= $wp_query->max_num_pages; $i++ ){ // Loop through pages | |
if($i<=$first || $i<=$middle && $page<$middle || $i>$wp_query->max_num_pages-$last || $i>$wp_query->max_num_pages-$middle && $page>$wp_query->max_num_pages-$middle+1 || $i>$page-ceil($middle/2) && $i<=$page+floor($middle/2)){ | |
if ( $i == $page ) { // Current page or linked page? | |
echo '<strong>'.$i.'</strong>'; | |
} else { | |
echo '<a href="'.$baseURL.(($i!=1)?('page/'.$i.'/'):'').$qs.'">'.$i.'</a>'; | |
} | |
$dots=false; | |
}elseif(!$dots){ | |
echo '<span>...</span>'; | |
$dots=true; | |
} | |
} | |
echo '</div>'; | |
if ( $page < $wp_query->max_num_pages ) { // Next link? | |
echo '<a href="'.$baseURL.'page/'.($page+1).'/'.$qs.'" class="link-proximo">próximo</a>'; | |
} | |
else { | |
echo '<div class="proximo-sem-link">próximo</div>'; | |
} | |
echo '</div>'; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Como usar esse script
Adicione o script no seu arquivo functions.php
No arquivo que queria aparecer a paginação, adicione o código abaixo após fechar a função have_post();
<?php paglink(1, 1, 10, get_bloginfo('wpurl').'/seu_custom_post_type_categoria_ou_taxonomy/', $wp_query); ?>
Não esqueça de alterar o seguinte dados do código acima: "seu_custom_post_type_categoria_ou_taxonomy"
Observação
Esse script foi encontrado em algum lugar na Internet após uma pesquisa sobre tutoriais de como fazer uma paginação sem plugin, não tenho a autoria do código, apenas publiquei por ser uma solução muito util em caso de problemas com plugins. Caso conheça o proprietário dessa função, favor entrar em contato.