Функция 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()— получение текста количества комментариев.
Эти функции помогут вам лучше работать с комментариями на вашем сайте и улучшить функциональность ваших тем и плагинов.