comment_classхук-фильтрWP 2.7.0

Позволяет изменить список CSS-классов, применяемых к каждому тегу комментария <li> в шаблоне.

Применяется при генерации HTML-обёртки для комментария в шаблоне. Это позволяет добавить, изменить или удалить классы, которые будут присвоены элементу комментария.

Может использоваться в файле темы (например, comments.php), где вызывается функция comment_class().

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

add_filter( 'comment_class', 'wp_kama_comment_class_filter', 10, 5 );

/**
 * Function for `comment_class` filter-hook.
 * 
 * @param string[]    $classes    An array of comment classes.
 * @param string[]    $css_class  An array of additional classes added to the list.
 * @param string      $comment_id The comment ID as a numeric string.
 * @param WP_Comment  $comment    The comment object.
 * @param int|WP_Post $post       The post ID or WP_Post object.
 *
 * @return string[]
 */
function wp_kama_comment_class_filter( $classes, $css_class, $comment_id, $comment, $post ){

	// filter...
	return $classes;
}
$classes(массив)
Массив CSS-классов, применяемых к тегу комментария.
$css_class(массив)
Массив дополнительных CSS-классов применяемых к тегу комментария - первый параметр функции get_comment_class().
$comment_id(string)
ID комментария. Число в виде строки.
$comment(WP_Comment)
Объект текущего комментария.
$post(int|WP_Post)
Объект поста к которому относится комментарий.

Примеры

1

#1 Добавление пользовательского класса к комментариям

Добавим CSS-класс my-comment ко всем комментариям.

add_filter( 'comment_class', function( $classes ) {
	$classes[] = 'my-comment';

	return $classes;
} );
0

#2 Добавление класса для комментариев автора записи

Добавим класс by-post-author, если автор комментария также является автором записи.

add_filter( 'comment_class', function( $classes, $_, $__, $comment, $post ) {
	if ( $comment->user_id === $post->post_author ) {
		$classes[] = 'by-post-author';
	}

	return $classes;
}, 10, 5 );

Список изменений

С версии 2.7.0 Введена.

Где вызывается хук

get_comment_class()
comment_class
wp-includes/comment-template.php 599
return apply_filters( 'comment_class', $classes, $css_class, $comment->comment_ID, $comment, $post );

Где используется хук в WordPress

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