Как вывести номер текущей страницы

Способ, описанный в этом посту, позволяет в любом месте вывести либо получить и записать в переменную номер страницы, на которой вы находитесь, применимо для:

  • страниц архивов постов — рубрики, метки, пользовательские таксономии,
  • главной страницы блога (если она используется для вывода постов),
  • страниц с произвольными шаблонами (если они также используются для вывода постов).

Работает на основе get_query_var(), которая, в свою очередь, использует глобальный объект $wp_query — это означает, что функция видит только главный цикл страницы, то есть функция будет также работать для цикла query_posts(), но не будет работать для WP_Query.

$pageNum=(get_query_var('paged')) ? get_query_var('paged') : 1; // получаем номер текущей страницы и присваиваем значение переменной
echo $pageNum; // выводим номер текущей страницы

Для тех, кто не знаком с сокращенной записью условных операторов (shorthand), вот аналог данного кода:

$pageNum = 1; // по умолчанию номер страницы всегда будет 1
if( $cur_page = get_query_var('paged') ) { 
    $pageNum = $cur_page;
}
// и выводим результат:
echo $pageNum;

Использование номера текущей страницы в навигации по сайту, а также его польза для SEO.

Окей, давайте теперь посмотрим, где и для чего он нам в принципе может пригодиться:

  • в хлебных крошках страниц,
    Вывод номера текущей страницы в хлебных крошках.
  • в скрипте (или плагине) постраничной навигации,
    Постраничная навигация.
  • в тайтлах архивов категорий (т.е. для того, чтобы они были уникальными — на мой взгляд, это большой плюс для внутренней seo-оптимизации сайта),
    Использование номера текущей страницы в заголовках постов
  • для произвольного шаблона страницы блога.

Приведу нестандартный пример, который использовал я:

function robots_meta(){
    $pageNum=(get_query_var('paged')) ? get_query_var('paged') : 1;
    if ($pageNum>1) 
        echo '<meta name="robots" content="noindex, follow">';
}

Функция применялась для внутренней перелинковки и вызывалась между <head> и </head> — то есть в рубриках для индексации была доступна только первая страница, на остальных уже вставлялся блокирующий мета тег, зато в каждом посту было несколько ссылок на следующие 5 записей из этой же категории.

Источник: misha.blog

Миша Рудрастых

Путешествует по миру и рассказывает всем о WordPress лично, у себя в блогах и на курсах в Санкт-Петербурге. Умеет просто объяснять сложные вещи, делает это красиво. Организовывает неплохие WordCamp's, но совсем не умеет слушать чужие доклады.

Добавить комментарий

%d такие блоггеры, как: