Получение Пагинации Комментариев в WordPress: Использование и Примеры

Получение Пагинации Комментариев в WordPress

Функция get_the_comments_pagination() помогает создать навигацию для перехода к предыдущему или следующему набору комментариев на странице. Это полезно, когда у вас много комментариев, и вы хотите разделить их на страницы.

Возвращаемое значение

Эта функция возвращает строку, содержащую HTML-код для пагинации (перелистывания страниц).

Использование

Синтаксис

get_the_comments_pagination( $args );

Параметры

  • $args (array) — Опциональный массив аргументов для пагинации.
    • screen_reader_text (string) — Текст для скрин-ридеров (программ для чтения с экрана). По умолчанию: 'Пагинация комментариев'.
    • aria_label (string) — Атрибут ARIA для навигационного элемента. По умолчанию: 'Пагинация комментариев'.
    • class (string) — Пользовательский класс для навигационного элемента. По умолчанию: 'comments-pagination'.

Пример

Допустим, у вас есть пост с именем "postname", в котором 30 комментариев, и вы хотите показывать по 10 комментариев на странице. Используйте следующий код для отображения пагинации:

Или можете использовать упрощённую функцию для быстрого отображения:

Результат

Вы получите следующий HTML-код:

Важные замечания

  • Функция paginate_comments_links() используется внутри get_the_comments_pagination() для создания ссылок на страницы с комментариями.
  • Убедитесь, что вы добавили необходимые параметры, если хотите изменить поведение функции.

Примечания о функционале

  • С версии 4.4.0 функция была введена в WordPress.
  • В версии 5.3.0 был добавлен параметр aria_label.
  • В версии 5.5.0 добавлен параметр class.

Код функции

Вы можете ознакомиться с реализацией функции get_the_comments_pagination() ниже:


function get_the_comments_pagination( $args = array() ) {
$navigation = '';

// Убедитесь, что элемент навигации имеет атрибут aria-label: использование текста для скрин-ридеров как запасного варианта.
if ( ! empty( $args['screen_reader_text'] ) && empty( $args['aria_label'] ) ) {
    $args['aria_label'] = $args['screen_reader_text'];
}

$args = wp_parse_args(
    $args,
    array(
        'screen_reader_text' => __( 'Пагинация комментариев' ),
        'aria_label'         => __( 'Пагинация комментариев' ),
        'class'              => 'comments-pagination',
    )
);
$args['echo'] = false;

// Убедитесь, что мы получаем строку в ответе. Plain - следующее лучшее решение.
if ( isset( $args['type'] ) && 'array' === $args['type'] ) {
    $args['type'] = 'plain';
}

$links = paginate_comments_links( $args );

if ( $links ) {
    $navigation = _navigation_markup( $links, $args['class'], $args['screen_reader_text'], $args['aria_label'] );
}

return $navigation;

}

Теперь вы знаете, как использовать функцию get_the_comments_pagination() в WordPress, чтобы улучшить навигацию по комментариям на вашем сайте.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *