WordPress navigacija brez dodatkov (WP-PageNavi alternativa)


Za “številčno” navigacijo po straneh WordPress bloga namesto WP-PageNavi dodatka priporočam uporabe spodnjega snippeta, saj WordPress omogoča praktično enako funkcionalnost že od 2.1 verzije.

Spodnjo kodo kopirajte v functions.php:

[php]
function wp_navigation() {
global $wp_query, $wp_rewrite;
$pages = ”;
$max = $wp_query->max_num_pages;

if (!$current = get_query_var(‘paged’))
$current = 1;

$a[‘base’] = str_replace(999999999, ‘%#%’, get_pagenum_link(999999999));
$a[‘total’] = $max;
$a[‘current’] = $current;

$total = 1; //1 – prikaz texta "Stran N od N", 0 ni prikazana
$a[‘mid_size’] = 3; // koliko povezav je prikazanih pred in po trenutni strani
$a[‘end_size’] = 1; // koliko povezav je prikazanih na začetku in koncu
$a[‘prev_text’] = ‘« Prejšnja stran’; // tekst povezave za prejšnjo stran
$a[‘next_text’] = ‘Naslednja stran »’; // tekst povezave za naslednjo stran

if ($max > 1) echo ‘<div class="navigation">’;
if ($total == 1 && $max > 1) $pages = ‘<span class="pages">Stran ‘ . $current . ‘ od ‘ . $max . ‘</span>’."\r\n";
echo $pages . paginate_links($a);
if ($max > 1) echo ‘</div>’;
}
[/php]

V index.php, kjer želite imeti izpisano navigacijo, pa kopirajte sledeče:

[php]<?php if (function_exists(‘wp_navigation’)) wp_navigation(); ?>[/php]

Za lažje oblikovanje navigacije v CSS so spodaj našteti selektorji, katerim je potrebno določiti pravila (lahko pa sami poiščete selektorje v izvorni kodi strani, ki jo naložite, ko uspešno implementirate zgornje):

[css]
.navigation {}
.pages {}
.prev {}
.next {}
.page-numbers {}
.dots {}
.current {}
[/css]