Как выделить собственные комментарии.
18 февраля2008 года
Меня попросили рассказать, как сделать так, чтобы ваши собственные комментарии выделялись на странице, то есть выглядели иначе, чем у остальных участников. По умолчанию в Wordpress не встроено подобной функции, и нет никакой разницы, кто написал комментарий: автор блога или кто-то другой.
Что делать, если вы хотите, например, сделать фон вашего комментария зеленым?

Довольно легкий способ описан в статье How-to style WordPress author comments («Как выделить авторские комментарии»), однако вам придется залезать в файлы Wordpress-шаблона.
Итак, ищите файл comments.php (папка wp-content/themes/, подпапка с вашим Wordpress-дизайном или «Default»), открывайте его в «Блокноте». Нас интересуют следующие строки.
<li <?php echo $oddcomment; ?>id="comment-<?php comment_ID() ?>">
<cite><?php comment_author_link() ?></cite> пишет:
<?php if ($comment->comment_approved == '0') : ?>
Здесь указано, в каком виде выводить комментарии на странице. Благодаря этому коду комментарий выглядит следующим образом:
<li id="12345">
<cite><span id="editAuthor12345" class="editAuthor post"><a href='http://somelink' rel='external'>Имя автора</a></span></cite> пишет:
Вам нужно заменить строчки
<li <?php echo $oddcomment; ?>id="comment-<?php comment_ID() ?>">
на
<li class="<?php if ($comment->comment_author_email == "author@domain.com") echo 'author'; else echo $oddcomment; ?> item" id="comment-<?php comment_ID() ?>">
Здесь author@domain.com – это ваш почтовый адрес. Вы наверняка помните, что любой человек, написавший комментарий, должен ввести адрес электронной почты. Можно сделать так, чтобы Wordpress проверял каждый комментарий и изменял код в зависимости от того, какой именно адрес введен. И если вы введете собственный e-mail, допустим, author@domain.com, то к комментарию будет добавлен другой css-класс. В данном случае, если адрес электронной почты – author@domain.com, то у тэга <li> добавится class="author". Иначе комментарий будет показан без всяких изменений, как обычно. Вам остается изменить css-файл, вставив туда что-нибудь наподобие
.author {background-color : #E1EFDE;}
Комментарий с классом «author» отобразится светло-зеленым. Дерзайте!
Кроме того, для комментариев часто используется класс .alt, и тогда они идут не сплошным списком, а чередуются по стилю в шахматном порядке. Например, белый-серый-белый-серый. Если вы используете шаблон default (по умолчанию), то в результате вышеуказанных действий появляются какие-то странные кавычки, и у вас может пропасть .alt, т.е. этот альтернативный класс. Помогает изменение строчек comments.php
<?php
/* Changes every other comment to a different class */
$oddcomment = ( empty( $oddcomment ) ) ? 'class="alt" ' : '';
?>
на
<?php if ('alt' == $oddcomment) $oddcomment = '';
else $oddcomment = 'alt'; ?>
Хочу также добавить, что есть разные плагины, например, Highlight Author Comments, но я ни один не пробовала, поэтому не могу посоветовать что-то конкретное.
Risotto
Стив Каллихан. Настольная книга по CSS. Готовые примеры и шаблоны
М. Хольцшлаг. Языки HTML и CSS для создания Web-сайтов
Дэйв Ши. Философия CSS-дизайна
Энди Харрис. PHP/MySQL для начинающих
Лори Ульрих Фуллер. Adobe Photoshop CS3. Библия пользователя
Молли Хольцшлаг. 250 советов HTML и WEB-дизайна
Дэн Седерхольм. Пуленепробиваемый Web-дизайн














19 февраля 2008 в 18:04
Или воспользоваться одним из плагинов:
BM Comment Highlight
Comment Highlighter
)
20 февраля 2008 в 06:23
Мы не ищем лёгких путей.))
25 февраля 2009 в 23:41
Весьма интересная статья. Внес Ваш блог в закладки. Спасибо.