Навигация по комментариям в WordPress: get_the_comments_navigation()

# Получение навигации по комментариям (GET_THE_COMMENTS_NAVIGATION())

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

## Используемые функции

- get_comment_pages_count()
- get_previous_comments_link()
- get_next_comments_link()
- _navigation_markup()

## Назначение

Эта функция полезна в случае, если комментарии вашего поста разбиты на несколько страниц. Она возвращает HTML-код для отображения ссылок на предыдущие и новые комментарии.

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

Функция возвращает строку с HTML-кодом, содержащим ссылки на комментарии.

## Применение

Для вызова функции используется следующий синтаксис:

```php
get_the_comments_navigation( $args );

Параметры

Параметры функции опциональны. По умолчанию используются следующие значения для навигации по комментариям:

  • prev_text (строка): текст ссылки на предыдущие комментарии. По умолчанию: 'Старые комментарии'
  • next_text (строка): текст ссылки на новые комментарии. По умолчанию: 'Новые комментарии'
  • screen_reader_text (строка): текст для экранного считывателя. По умолчанию: 'Навигация по комментариям'
  • aria_label (строка): ARIA-метка для элемента навигации. По умолчанию: 'Комментарии'
  • class (строка): пользовательский класс для элемента навигации. По умолчанию: 'comment-navigation'

Пример использования

Предположим, что у вас есть пост с 44 комментариями и вы находитесь на второй странице навигации комментариев:

$html = get_the_comments_navigation();

В этом случае переменная $html будет содержать следующий HTML-код:

Изменения

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

Исходный код функции

Вот как выглядит код функции get_the_comments_navigation():

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

// Проверяем, есть ли комментарии для навигации.
if ( get_comment_pages_count() > 1 ) {
    // Убедимся, что у элемента навигации есть атрибут 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(
            'prev_text'          => __( 'Старые комментарии' ),
            'next_text'          => __( 'Новые комментарии' ),
            'screen_reader_text' => __( 'Навигация по комментариям' ),
            'aria_label'         => __( 'Комментарии' ),
            'class'              => 'comment-navigation',
        )
    );

    $prev_link = get_previous_comments_link( $args['prev_text'] );
    $next_link = get_next_comments_link( $args['next_text'] );

    if ( $prev_link ) {
        $navigation .= '';
    }

    if ( $next_link ) {
        $navigation .= '';
    }

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

return $navigation;

}

Заключение

Функция get_the_comments_navigation() является полезным инструментом для улучшения навигации по комментариям в WordPress. Благодаря ей пользователи могут легко перемещаться между страницами комментариев, что делает взаимодействие с вашим контентом более удобным.

Leave a Reply

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