fbpx

Bem vindo ao
Blog da FULL.

Aprenda, crie e cresça seu negócio na internet.

Encontre conteúdos, dicas, tutoriais e novidades sobre as principais ferramentas Wordpress

Como adicionar paginação ao seu tema WordPress

Você está em:

Como adicionar paginação ao seu tema WordPress

Se você deseja adicionar suporte à paginação ao seu tema WordPress com números legais em vez do post padrão seguinte e anterior, você pode fazê-lo usando o famoso plugin PageNavi , no entanto, prefiro adicionar paginação manualmente aos meus temas para que as pessoas não tem que ir à procura de um plugin. Também ajuda a manter o site mais rápido sem todos os scripts externos e CSS.

Felizmente, existe uma ótima função no wordpress chamada “ paginate_links ” que foi adicionada no WordPress 2.1 e permitirá que você crie uma navegação de estilo paginado para qualquer consulta em seu site. Aqui está um tutorial rápido para adicionar uma navegação de página simples ao seu tema que se parece com a paginação no meu Total WordPressTheme .

Paginação PHP

Simplesmente adicione o seguinte código no final do seu arquivo functions.php (ou qualquer arquivo em seu tema onde você deseja mantê-lo).

// Numbered Pagination

if ( !function_exists( ‘wpex_pagination’ ) ) {

function wpex_pagination() {

$prev_arrow = is_rtl() ? ‘→’ : ‘←’;

$next_arrow = is_rtl() ? ‘←’ : ‘→’;

global $wp_query;

$total = $wp_query->max_num_pages;

$big = 999999999; // need an unlikely integer

if( $total > 1 )  {

if( !$current_page = get_query_var(‘paged’) )

$current_page = 1;

if( get_option(‘permalink_structure’) ) {

$format = ‘page/%#%/’;

} else {

$format = ‘&paged=%#%’;

}

echo paginate_links(array(

‘base’ => str_replace( $big, ‘%#%’, esc_url( get_pagenum_link( $big ) ) ),

‘format’ => $format,

‘current’ => max( 1, get_query_var(‘paged’) ),

‘total’ => $total,

‘mid_size’ => 3,

‘type’ => ‘list’,

‘prev_text’ => $prev_arrow,

‘next_text’ => $next_arrow,

) );

}

}

}

VER TODOS OS PARÂMETROS

CSS de paginação

Copie o CSS a seguir e cole em seu arquivo style.css.

ul.page-numbers {

    list-style: none;

    margin: 0;

}

.page-numbers:after {

    content: “.”;

    display: block;

    clear: both;

    visibility: hidden;

    line-height: 0;

    height: 0;

}

ul.page-numbers li {

    display: block;

    float: left;

    margin: 0 4px 4px 0;

    text-align: center;

}

.page-numbers a,

.page-numbers span {

    line-height: 1.6em;

    display: block;

    padding: 0 6px;

    height: 18px;

    line-height: 18px;

    font-size: 12px;

    text-decoration: none;

    font-weight: 400;

    cursor: pointer;

    border: 1px solid #ddd;

    color: #888;

}

.page-numbers a span { padding: 0 }

.page-numbers a:hover,

.page-numbers.current,

.page-numbers.current:hover {

    color: #000;

    background: #f7f7f7;

    text-decoration: none;

}

.page-numbers:hover { text-decoration: none }

Adicionando a função de paginação ao seu tema

Para chamar de volta a função de paginação é muito simples. Tudo o que você precisa fazer é adicionar o seguinte código aos seus arquivos de tema onde deseja mostrar qualquer tipo de paginação. Os mais comuns são index.php, home.php, category.php, tags.php, archive.php e search.php. Mas se você tiver algum modelo de página personalizado com suporte a paginação, adicione-o aqui.

Substitua a paginação padrão pelo seguinte (normalmente localizado em algum lugar após endif ):

<?php wpex_pagination(); ?>

Consultas personalizadas?

Se você estiver criando uma consulta personalizada usando WP_Query, esta função não funcionará a menos que você tenha definido sua consulta na variável $wp_query (o que é ruim, não faça isso). Para corrigi-lo, geralmente crio novas consultas como as seguintes:

$wpex_query = new WP_Query( $args );

Desta forma posso alterar a função de paginação principal para procurar a variável ao criar a paginação, exemplo (editar o primeiro trecho):

global $wp_query, $wpex_query;

if ( $wpex_query ) {

    $total = $wpex_query->max_num_pages;

} else {

    $total = $wp_query->max_num_pages;

}

Atualização : Neste exemplo eu verifico a variável global… No entanto, você pode simplesmente passar a variável de consulta diretamente para a função wpex_pagination, que provavelmente é uma escolha melhor

Aprenda com a FULL.

Junte-se a mais de 50 mil pessoas que recebem em primeira mão as principais ferramentas e tecnologia para desenvolvimento web

Meu carrinho
🎁 Faltam R$300,00 para liberar o Cupom Secreto
Seu carrinho está vazio.

Parece que você não adicionou nada ao seu carrinho =(