суббота, ноября 01, 2008

Blogger. Подсветка авторских комментариев.

Иногда появляется необходимость выделить свои комментарии из числа всех комментариев на блоге. Существует несколько решений этой проблемы.

Первый способ - установка сторонней системы комментирования, например IntenseDebate или Disqus. Плюсов данного решения масса: аватары, репутация, вложенные комментарии, видеокомментарии (Disqus) и т.д. Из минусов, пожалуй, это больший объем трафика и зависимость от стороннего сервиса. Хотя если блог имеет большую посещаемость и комментаторы достаточно активны есть повод задуматься об установке подобной системы.

Второй способ - использование подключаемых скриптов и стилей. Есть подробное руководство Blogger Trick: Style Author Comments Differently with jQuery. Этот способ мне показался не слишком оправданным, поскольку я не считаю целесообразным подключать целый Javascript-фреймворк всего лишь для такой задачи как подсветка авторских комментариев.

В своем блоге я использовал более экономное решение использующее только встроенный функционал движка Blogger. Итак начнем.

Для начала добавим необходимые стили в шаблон блога. Допустим будем выделять авторские комментарии болдом.

.comment-body-author {
margin:0;
padding:0 0 0 20px;
}
.comment-body-author p {
font-size:100%;
margin:0 0 .2em 0;
color:#CC3300;
text-decoration:bold;
}

Далее ищем строку (не забываем поставить галочку Расширить шаблоны виджета):

<dd class='comment-body'>

И сразу перед ней вставляем следующую конструкцию:

<b:if cond='data:comment.author == data:post.author'>
          <dd class='comment-body-author'>
            <p><data:comment.body/></p>
          </dd>
        <b:else/>

Ставим закрывающий тег

</b:if>

Перед строкой

<dd class='comment-footer'>

Вот, собственно, и все.

© http://hackosphere.blogspot.com/