УрокВыделение комментариев (аноним, автор статьи, админ)
Комментарии - довольно часто используемый модуль друпала. И хорошим тоном считается выделение комментариев анонимов, или автора статьи, или админа, или их всех сразу. Теперь о том как это сделать.
Для того чтобы менять фон для комментариев разного типа, достаточно влесть в создание комментириев и повесить на коммент определённый класс, а потом в зависимости от этого класса через css вешать фон на эти стили.
Чтобы это всё сделать, вставьте следуйщий код в template.php:
function имяТемы_preprocess_comment(&$vars, $hook) { global $user; $node = node_load($vars['comment']->nid); $vars['author_comment'] = $vars['comment']->uid == $node->uid ? TRUE : FALSE; //опеределяет, текущий пользователь автор статьи или нет $comment_classes = array(); static $comment_odd = TRUE; $comment_classes[] = $comment_odd ? 'odd' : 'even'; // делает "зебру" чередованием классов $comment_odd = !$comment_odd; if ($vars['comment']->status == COMMENT_NOT_PUBLISHED) { $comment_classes[] = 'comment-unpublished'; //если коммент неопубликован - добавится класс <strong>.comment-unpublished</strong> $vars['unpublished'] = TRUE; } else { $vars['unpublished'] = FALSE; } if ($vars['author_comment']) { $comment_classes[] = 'comment-by-author'; //если проверка на автора статьи сработала, до добавится класс <strong>.comment-by-author</strong> } if ($vars['comment']->uid == 0 ) { $comment_classes[] = 'comment-by-anon'; //если аноним - то коммент будет с классом <strong>.comment-by-anon</strong> } $vars['comment_classes'] = implode(' ', $comment_classes); //добавляются классы к комменту }
Всё, сохраняем и чистим кэш. Теперь каждый коммент будет с классом "аноним" или "автор статьи" или "неопубликованный" + каждый класс будет либо "odd" либо "even" для "зебры".
- Spleshka
- 02.09.2010
- 6753
Комментарии
thanx man!!! и еще большое спасибо за комменты в коде. Я просто с пхп еще на Вы)) Так что будет легче понять.
А если ГЛАВНЫЙ admin?
Это для шестерки?Где подобное на семерку найти?Уже весь моск трещит по швам.
Знакомые разработчики говорят чтоб за пхп пока небрался,иначе вообще зависнуть можно,а делать стандатртными способами,но потребности упирабтся в кодирование.хз.как быть.Все что есть нормального,подходит под шестерку.Но что то после семреки я в шестерке себя уже неуютно чувствую))
Комментировать