Możesz to zrobić za pomocą jednego wiersza kodu, ale z drugiej strony możesz chcieć dodać kod w innych miejscach, więc funkcja jest zwykle bardziej przydatna.
function current_paged( $var = '' ) {
if( empty( $var ) ) {
global $wp_query;
if( !isset( $wp_query->max_num_pages ) )
return;
$pages = $wp_query->max_num_pages;
}
else {
global $$var;
if( !is_a( $$var, 'WP_Query' ) )
return;
if( !isset( $$var->max_num_pages ) || !isset( $$var ) )
return;
$pages = absint( $$var->max_num_pages );
}
if( $pages < 1 )
return;
$page = get_query_var( 'paged' ) ? get_query_var( 'paged' ) : 1;
echo 'Page ' . $page . ' of ' . $pages;
}
UWAGA: Kod może przejść do pliku funkcji.
Wystarczy wywołać funkcję, w której chcesz wyświetlić komunikat „Strona x z y”, np.
<?php current_paged(); ?>
Jeśli potrzebujesz kodu do pracy z niestandardowym zapytaniem, tj. jeden utworzony za pomocą WP_Query
, a następnie po prostu przekaż nazwę zmiennej, która przechowuje zapytanie do funkcji.
Przykład nieistniejącego zapytania:
$fred = new WP_Query;
$fred->query();
if( $fred->have_posts() )
... etc..
Pobieranie bieżącej strony niestandardowego zapytania za pomocą wcześniej opublikowanej funkcji ..
<?php current_paged( 'fred' ); ?>
Jeśli chcesz całkowicie zapomnieć o niestandardowej obsłudze zapytań i szukasz jednej linijki, to powinno to zrobić.
<?php echo 'Page '. ( get_query_var('paged') ? get_query_var('paged') : 1 ) . ' of ' . $wp_query->max_num_pages; ?>
Mam nadzieję, że to pomoże .. :)
$wp_query->max_num_pages
?