WordPress как на ладони
wordpress jino

comment_class() WP 2.7.0

Выводит CSS классы для помощи в оформлении комментариев.

Этот Тег шаблона преимущественно предназначен для авторов шаблонов.

comment_class() выводит текст типа: class="классы", где вместо "классы" могут быть значения: comment, even или odd, thread-even, depth-1 и т.д., в зависимости от того, какой комментарий отображается в текущий момент.

Работает на основе: get_comment_class()
✈ 1 раз = 0.001315с = очень медленно | 50000 раз = 2.64с = быстро PHP 7.0.5, WP 4.4.2

Хуков нет.

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

Этот тег шаблона нужно использовать внутри HTML тега (контейнера комментария):

<li <?php comment_class( $class, $comment, $post_id, $echo ); ?> id="li-comment-<?php comment_ID() ?>">
$class(строка)
Свой, произвольный класс, который нужно добавить к остальным классам.
По умолчанию: ''
$comment(число/объект)
ID или объект комментария для которого нужно вывести классы.
По умолчанию: null
$post_id(число/объект)
ID или объект поста, с которым связан комментарий, для которого нужно вывести классы.
По умолчанию: null
$echo(логический)
Выводить результат на экран (true) или возвращать для обработки (false).
По умолчанию: true

Возможные классы

comment_class() будет выводить следующие классы, для разных комментариев и в разных условиях:

Тип комментария
Для комментариев (не уведомлений) добавляется класс "comment". Для всех остальных типов добавляется название типа в качестве класса.
Пользователи
Если комментарий был оставлен зарегистрированным пользователем, то будут добавлены классы "byuser" и "comment-author-Ник_автора". Если комментарий оставлен автором статьи, то будет добавлен класс "bypostauthor".
Четный/не четный
Для четных комментариев будет выводится класс "even", в остальных случаях "odd" и "alt".
Верхний уровень(для древовидных комментариев)
Для комментариев верхнего уровня будет добавлен класс "thread-even" или "thread-alt" и "thread-odd" в зависимости от того, четный это комментарий или нет.

Примеры

#1. Предположим что функция вызывается для чётного комментария верхнего уровня:

<?php comment_class(); ?>

получим: class="comment even thread-even".

#2. Добавим свой класс "special" к остальным:

<?php comment_class('special'); ?>

получим: class="comment even thread-even special".

Заметки

Имейте ввиду что comment_class() использует глобальные переменные: $comment_alt, $comment_depth, $comment_thread_alt, которые можно изменить заранее, чтобы воздействовать на результат функции.

Например, можно принудительно отменить "alt" класс у первого комментария (будет выведен класс "even"): $comment_alt=false;

Код comment class: wp-includes/comment-template.php VER 4.9.1

<?php
function comment_class( $class = '', $comment = null, $post_id = null, $echo = true ) {
	// Separates classes with a single space, collates classes for comment DIV
	$class = 'class="' . join( ' ', get_comment_class( $class, $comment, $post_id ) ) . '"';
	if ( $echo)
		echo $class;
	else
		return $class;
}

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

Из метки: Оформление

Еще из раздела: Циклы комментариев

Www.igrovoi-club-vulkan.com

Фильм вулкан страстей 2014 смотреть онлайн бесплатно www.igrovoi-club-vulkan.com.

igrovoi-club-vulkan.com

comment_class Комментариев нет

Здравствуйте, !

Ваш комментарий