Улучшаем и украшаем комментарии – часть четвертая, заключительная.

Украшения и улучшения комментариев. Часть 4-ая, заключительнаяЭтот заключительный пост из серии Украшаем комментарии в WordPress, Украшаем комментарии в WordPress – часть 2 и часть 3-я. Итак, мы добрались почти до самого конца, и если в предыдущей части мы, в основном, вносили изменения в код, то последние украшательства/улучшательства будем делать с помощью плагинов. Должен сказать, что иногда эти плагины ведут себя весьма неадекватно – такие я даже не привожу в постах, чтобы случайно не поломать чего, ненароком. Последний из примеров – после установки одного из них пропала панелька TinyMCE, визуальный WYSIWYG редактор постов, остались одни шорткоды, ну т.е. совсем исчезла, даже кнопка ее вывода.

Я минут 15 страдал, прежде чем догадаться, что один из установленных и снесенных потом плагинов ее отключил, и при деактивации и удалении забыл обратно включить. Слава богу, что вернуть ее обратно оказалось достаточно просто – необходимо зайти в меню “Пользователи”, там – “Ваш профиль”, и снять галочку с самого верхнего чек-бокса. Но поди-ж ты догадайся!

Но вернемся к нашим баранам. Первое, что хотелось сделать – это прикрутить отправку комментариев без перезагрузки страницы, т.е. на AJAX. Плагинов, реализующих это – вагон и маленькая тележка. Особо о них рассказывать нечего, просто скажу, что я перепробовал следующие:

Ajax Comments-Reply – жутко глючный, до неузнаваемости изменяет тему

AJAX Comments 2.08 – выдает не очень красивое сообщение об ошибках в отправке комментария, и не хочет работать с антиспам-защитой (AntispamBee) и WYSIWYG редактором комментариев

WordPress Thread Comment – тоже самое, вид сбоку

Ajax Comment Posting 2.0 – глючит не меньше, вообще ничего не отправляет

Silk AJAX Comments 1.0 – комментарии отправляются, но если включено предварительное модерирование, то абсолютно не видно, ушел ли комментарий, или нет, плюс – все на английском, переводить влом

WP-Ajaxify-Comments 0.5.2 – не совсем отправка комментов через аякс. Скорее, это всплывающая подсказка в случае, если не заполнено какое-либо обязательное поле, вместо вывода отдельной страницы с ошибкой, хотя авторы утверждают, что и отправка происходит через аякс. В целом, он мне понравился – множество настроек, стабильная работа на теме. Хотя шрифт подсказки вызывает некоторые нарекания. И пока нет русской локализации, но это вопрос времени.

wp-comment-master 1.7 – очень неплохой плагин, достаточно грамотно отрабатывает отправку комментариев, надпись об ошибке выводит почти там где надо – это легко можно поправить. Присутствуют две проблемы:

1) если установлен плагин WP Ajax Edit Comments (о нем будет чуть ниже), то возможность редактировать комментарии появляется только после перезагрузки страницы. Так что придется выбирать – или этот плагин, или  тот, или поясняющую подпись вводить

2) если установлен какой-либо WYSIWYG редактор для комментариев, например, Tiny MCEcomments, то по первому нажатию кнопки “отправить комментарий” – выводится надпись, что поле для комментария не заполнено, и только после второго нажатия он уже отправляется (а, к слову сказать, с CLEditor for WordPress работает вообще криво, прогружая комментарии только после обновления страницы)

PTM AJAX Comments 1.04 – проблемы начались, когда я пытался его скачать – zip файл успешно скачивался, но внутри был пустым. Тогда скачал со страницы разработчика. Установил. Настроек – очень много. Но, к сожалению, адекватно на теме вместе с остальными плагинами работать не смог.

В результате я решил остановиться на wp-comment-master 1.7, с небольшими его доработками: а) для того, чтобы сообщение об ошибке выводилось не внизу формы комментария, а наверху, необходимо в файле “cm.js” строчку

заменить на:

б) для того, чтобы сообщение об ошибке выводилось красным цветом, а об успехе – зеленым, в том же файле необходимо строчку

заменить на:

К сожалению, необходимость двойного нажатия на кнопку отправки комментария при установленном TinyMCEComments портит всю малину. Я так чувствую – посмотрю, покопаюсь, и если не смогу решить эту проблему – то временно его отключу. Также есть желание попробовать описанный здесь способ – ну это если время будет.

Выше я упомянул о плагине WP Ajax Edit Comments 5.0.7.0. Это как раз является следующим пунктом тюнинга наших комментариев. После того, как я его себе поставил и увидел, как он работает – рассмотрение остальных подобных плагинов уже не имело никакого смысла. О его возможностях можно рассказывать бесконечно. Среди них:

  • Возможность дать незарегистрированному пользователю редактировать свои комментарии в течение установленного администратором времени, удалить комментарий, или послать запрос на его удаление (настраивается администратором), причем вне зависимости – был ли уже опубликован комментарий, или стоит в очереди на публикацию

Плагин WP Ajax Edit Comments для Вордпресс

  • Настроить, что позволять редактировать – только сам комментарий, или еще и личную информацию
  • Настроить, будет ли админу отправляться письмо о том, что комментарий был отредактирован
  • Позволять ли редактировать комментарий, если появились еще комментарии в ответ

Плагин WP Ajax Edit Comments для Вордпресс

  • Прикрутить обратный отсчет этого времени (но я, к примеру, отключил его вывод, чтобы не смущать пользователей)
  • Выводить сообщение комментатору о том, что он может делать со своим комментарием

Плагин WP Ajax Edit Comments для Вордпресс

  • Возможность управлять всеми комментариями как из админки, так и непосредственно с сайта (с сайта – если комментарий отправляется без постановки в очередь на модерацию)
  • Под понятие управление входят следующие возможности:
  • Можно удалить, подтвердить комментарий

Плагин WP Ajax Edit Comments для Вордпресс

  • Можно перенести его в другую ветку, если комментатор промахнулся

Плагин WP Ajax Edit Comments для Вордпресс

  • Можно занести комментатора в черный список по e-mail, нику, IP, URL, и отправить туда же все его комментарии одним кликом

Плагин WP Ajax Edit Comments для Вордпресс

  • Удалить одним нажатием кнопки все ссылки из комментария – как все, так и только в теле комментария

 

  • Отправить комментатору письмо, кликнув на кнопку в выпадающем меню у комментария, и введя текст в открывшемся поле

Плагин WP Ajax Edit Comments для Вордпресс

  • В плагине предусмотрено использование нескольких скинов, которые подойдут к практически любой теме
  • Возможность расположить кнопки редактирования не только списком, но и в выпадающем меню, использовать просто надписи, кнопки и надписи, или только кнопки

Плагин WP Ajax Edit Comments для Вордпресс

  • И множество чего еще по мелочам.

Рассказать все невозможно, это необходимо просто видеть:

 

А попробовать, как работает редактирование комментариев – можно у меня здесь. Когда-то этот плагин был платным, и стоил весьма прилично. Сейчас его можно скачать и установить бесплатно. Сколько такая халява продлится – не известно. Но однозначно, это один из must have плагинов.

Огорчает в нем три вещи:

1.  В случае, если не установлен счетчик времени, то ссылка (кнопка) на редактирование комментария пользователем остается, а по истечению указанного времени просто становится неактивной до перезагрузки страницы. В случае, если счетчик стоит – то как только до нуля дошли, так сразу плавно и исчезает.

2. Невозможно редактировать комментарии без Pop-up Colorbox, чтобы прямо на месте,  внутри комментария

3. Нет возможности админу редактировать и модерировать прямо из статьи комментарии, ожидающие модерации (все равно приходится в админку залезать (это, впрочем, свойство вордпресса)

И вот тут-то пришло время поговорить о следующем весьма интересном плагине. Который позволяет модерировать комментарии в вордпрессе не из админки, а прямо со страницы поста. Называется он Thoughtful Comments 0.2.3.3, находится стандартно в депозитарии, а его собственная страничка – здесь. В рунете о нем особо и упоминаний никаких нет. Тем не менее, он весьма интересен. Вот как выглядит страничка из под администратора:

Thoughtful Comments

Красным отмечены пока еще неапрувленные комментарии. Нажав на соответствующие ссылки, можно допустить к публикации, удалить, отправить в бан. И это все – во фронт-энде! Плюс к этому – если комментарии древовидные – позволяет удалить всю ветку. После его установки хак из предыдущего поста, где мы выводили ссылки на удаление комментария – просто и не очень-то нужны (удалять не стал, т.к. времени на это нет, пусть пока побудут). А теперь главная фишка – этот плагин совершенно замечательно, и абсолютно не конфликтуя, работает с  WP Ajax Edit Comments 5.0.7.0. Конечно, они в части удаления комментария пересекаются друг с другом, но это – не большая беда. Почему этот плагин незаслуженно остался обделенным вниманием русскоязычной части интернета – я не понимаю.

Ну и последнее, о чем я хотел бы рассказать – это как раз то, что слишком хорошо освещено на просторах рунета, поэтому долго распространяться не буду. Плагин Subscribe to Comments 2.1.2 – из протестированных мне понравился больше всего. Качал его русскую версию, а здесь описание, как поправить его руссификацию, если не хочется в корне папок плагинов держать файлы руссификации. Единственное, что пришлось сделать – так это вставить в самый конец 85-ой строчи файла subscribe-to-comments.php после кода

код

Для того, чтобы надпись “Подписаться, не комментируя”, не залезала на форму ввода е-мэйла. Получилось так:

Получившаяся подписка на комментарии

И еще момент – вставлять форму “подписки, не комментируя” так, как написано в ридми и большинстве наших русскоязычных сайтов – не стоит, поскольку тогда она будет выводится даже там, где комментарии закрыты. Пофиксить это просто – надо внести после кода

в файл /wp-content/themes/ваша_тема/comments.php не

<?php show_manual_subscription_form(); ?>

а код

Спасибо доброму человеку OlegBon (ссылки нет, к сожалению). Ну а остальное (настройка и т.п.) – уже все просто и понятно – в настройках прописать путь к шапке, сайдбару и футеру, и поставить галку на “использовать свой стиль”. Можете прочитать хоть здесь, а вообще – гугль в помощь. Кстати, осталось впечатление, что если человек, комментируя, подписался, но его комментарий не пропустил автор сайта – то подписка тоже не сработает. В случае, если пропустили и одобрили – работает и для mail.ru, и для yandex.ru, и для gmail.com, проверил основные. Если хотим вписать стандартно используемый плагином стиль, то в style.css файл темы, в самый конец, надо не забыть добавить код:

/* SUBSCRIPTION MANAGER STYLE */
.subscription-manager {
padding: 10px 0 20px 0;
margin: 5px 0 0 55px;
width: 650px;
}

div.wrap {
background: #fafafa;
padding: 5px 10px;
margin: 20px 0;
border: 1px solid #ccc;
}

div.wrap h2 {
margin: .5em 0 1em 0;
border-bottom: 2px solid #589bd2;
}

div.wrap fieldset {
border: 1px solid #555;
margin: 1em 0;
padding: 5px 10px;
}

div.wrap fieldset legend {
font-weight: bold;
font-size: small;
}

div.wrap p.submit {
text-align: right;
}
.updated {
background: #B9D6EF;
border: 1px solid #589bd2;
margin: 1em 5% 10px;
padding: 0 1em;
}

.updated-error {
background-color: #FFA3A3;
border: 1px solid #FF5D5D;
}

div.wrap form {
margin: 0;
padding: 0;
}

div.warp li {
margin-bottom: 6px;
line-height: 130%;
}
/* END SUBSCRIPTION MANAGER STYLE */

Результат страницы управления подпиской вышел вот такой:

Управление подпиской в subscribe to comments плагине для Вордпресс

Надо немножко пофиксить верхнюю шапку – но это потом.

Upd: Поправил верхнюю шапку, внеся в css код следующие изменения:

Необходимо помнить, что Monotype Corsiva должен лежать у вас на сайте, и в css должны быть внесены необходимые изменения, как описано у меня здесь. А вот и результат шапки (вид из админки, но из под пользователя выглядит аналогично):

Такой стала шапка подписки на комментарии

Вот и все. Вскоре буду объединять все четыре части обзора в один, еще пару мыслей есть по тому, что надо сделать, да пока не знаю как (с тем же самым Аяксом, который я все-таки решил пока отключить, с одной неувязкой с выделением автора через css3, ну и т.п.) . Но в целом – с комментариями, их украшательством и настройкой все закончено.

Ну а в следующий раз нас ждет подробный разбор полетов, как сделать рассылку о новых статьях с сайта, и как привести в общий стиль с сайтом посредством CSS3 не только кнопки, которые отвечают за отправку комментариев, но и к примеру, за подписку на новые комментарии. Вернее, как я со всем этим возился.

1
You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.
7 комментариев

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *


Subscribe without commenting

QR Code Business Card