Функция GET_COMMENT_EXCERPT() в WordPress: Описание, применение и примеры использовани��

Функция GET_COMMENT_EXCERPT() в WordPress

Что это за функция?

Функция get_comment_excerpt() позволяет вытащить краткий текст комментария. Извлекается максимум 20 слов, и если текст длиннее, добавляется многоточие в конце.

Применение функции

Она используется в функции comment_excerpt() для отображения краткой версии комментариев.

Время выполнения

Время выполнения функции:

  • 1 раз — 0.000609 секунд (медленно)
  • 50,000 раз — 5 секунд (быстро)

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

Функция возвращает строку с кратким текстом комментария. Этот текст ��ожет быть усечен до 20 слов.

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

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

get_comment_excerpt( $comment_id );

Параметры

  • $comment_id (int|WP_Comment): ID комментария или объект WP_Comment, для которого нужно получить краткий текст.
  • По умолчанию используется текущий комментарий.

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

Пример 1: Урезание текста комментария до 20 слов

echo get_comment_excerpt( 1024 );

Вывод:

Looked at Get Recent Comments - messed up a mountain of code :)  Tested my code queries creates a standard function of WordPress..

Добавьте свой собственный пример

Изменения в функции

  • С версии 1.5.0 функция была внедрена.
  • С версии 4.4.0 добавлена возможность передавать объект WP_Comment в качестве $comment_id.

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

Функция get_comment_excerpt() реализована в файле wp-includes/comment-template.php:

function get_comment_excerpt( $comment_id = 0 ) {
$comment = get_comment( $comment_id );

if ( ! post_password_required( $comment->comment_post_ID ) ) {
    $comment_text = strip_tags( str_replace( array( "n", "r" ), ' ', $comment->comment_content ) );
} else {
    $comment_text = __( 'Password protected' );
}

/* translators: Максимальное количество слов, используемое в кратком тексте комментария. */
$comment_excerpt_length = (int) _x( '20', 'comment_excerpt_length' );

/**
 * Фильтрует максимальное количество слов, используемое в кратком тексте комментария.
 *
 * @since 4.4.0
 *
 * @param int $comment_excerpt_length Количество слов, которое вы хотите отображать в кратком тексте комментария.
 */
$comment_excerpt_length = apply_filters( 'comment_excerpt_length', $comment_excerpt_length );

$comment_excerpt = wp_trim_words( $comment_text, $comment_excerpt_length, '…' );

/**
 * Фильтрует извлечённый краткий текст комментария.
 *
 * @since 1.5.0
 * @since 4.1.0 Параметры $comment_id и $comment были добавлены.
 *
 * @param string     $comment_excerpt Текст краткого комментария.
 * @param string     $comment_id      ID комментария в виде числовой строки.
 * @param WP_Comment $comment         Объект комментария.
 */
return apply_filters( 'get_comment_excerpt', $comment_excerpt, $comment->comment_ID, $comment );

}

Связанные функции

В WordPress есть и другие функции, связанные с комментариями:

  • add_comment_meta() — добавление метаданных к комментарию.
  • get_comment_author() — получение имени автора комментария.
  • have_comments() — проверка наличия комментариев.
  • get_comments_number_text() — получение текста количества комментариев.

Эти функции помогут вам лучше работать с комментариями на вашем сайте и улучшить функциональность ваших тем и плагинов.

Leave a Reply

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