Пришло время серьезно заняться оформлением внешнего вида комментариев WordPress. Практически во всех темах они настраиваются системными файлами, что в свою очередь, ограничивает редактирование отдельных функций. Думаю, многие с таким сталкивались, когда нужно было вносить изменения в комментарии, но не могли найти где именно это находится. Поэтому будет лучше перенести весь функционал в текущую тему, что даст нам полную свободу управления.
В этой статье я собрал несколько интересных функций, которые помогут улучшить комментарии. Все-таки они позволяют вести диалоги, как с администратором сайта, так и между пользователями. Отвечать на вопросы, заводить разные дискуссии, в общем, ввести полноценное виртуальное общение. Так что необходимо уделить им внимание и привести в должный вид.
Вот что мы сделаем:
Разберем каждый пункт в отдельности, а в конце статьи будет уже полностью собраны все функции в один готовый код.
В WordPress’e вывод комментариев осуществляется через функцию wp_list_comments , обычно в файле comments.php . А формирование отдельных функций так же, как и сам цикл, используется из шаблона системного файла comment-template.php . Но в редких случаях бывает, что настройка может находиться в теме WordPress, файл functions.php или comments.php .
Так вот, если ваша тема не попадает в редкий случай и есть необходимости сделать свои настройки, тогда открываем файл functions.php и перед знаком?> добавляем следующий код:
If (! function_exists("my_comment")) : function my_comments($comment, $args, $depth) { global $commentnumber; $GLOBALS["comment"] = $comment; switch ($comment->comment_type) : case "pingback" : case "trackback" : ?>
", ""); ?>
Затем в файле comments.php добавить функцию вызова:
После этих манипуляций ваши комментарии будут формироваться по шаблонной функции из файла functions.php текущей темы.
С помощью ниже представленной функции мы сможем вывести возле комментатора общее его количество оставленных сообщений. Таким образом, можно наблюдать насколько активный пользователь, да и потом, статистика не бывает лишней, тем более в этом плане.
Открываем уже знакомый нам файл functions.php и прописывает в конце перед знаком?> следующий код:
//подсчет сообщений пользователей function bac_comment_count_per_user() { global $wpdb; $comment_count = $wpdb->get_var("SELECT COUNT(comment_ID) FROM ". $wpdb->comments. " WHERE comment_author_email = "" . get_comment_author_email() ."" AND comment_approved = "1" AND comment_type NOT IN ("pingback", "trackback")"); if ($comment_count == 1) { echo " 1 Сообщение"; } else { echo " " . $comment_count . " Сообщений"; } }
Теперь осталось добавить функцию вызова в нужное вам место:
Подсчет сообщений будет происходить на основе e-mail пользователя как зарегистрированных, так и нет. Комментарии учитываются только подтвержденные администратором сайта, а в режиме ожидания и удаленные нет.
Вот как раз тот случай, где статистика определенно играет важную роль. Поскольку функция построена за счет количества сообщений, а в итоге достигнутого числа дает пользователю должный статус. Это, по идее, используется на каждом форуме для показа авторитетности юзера на данном ресурсе.
Снова открываем файл functions.php и перед знаком?> добавляем следующий код:
//статус пользователя function get_author_class($comment_author_email,$user_id){ global $wpdb; $adminEmail = get_option("admin_email"); $author_count = count($wpdb->get_results("SELECT comment_ID as author_count FROM $wpdb->АдминUseR"; if($author_count>=1 && $author_count<50 && $comment_author_email !==$adminEmail) echo "Прохожий"; else if($author_count>=50 && $author_count<100 && $comment_author_email !==$adminEmail) echo "Новичок"; else if($author_count>=100 && $author_count<250 && $comment_author_email !==$adminEmail) echo "Знающий"; else if($author_count>=250 && $author_count<400 && $comment_author_email !==$adminEmail) echo "Опытный"; else if($author_count>=400 &&$author_count<800 && $comment_author_email !==$adminEmail) echo "Бывалый"; else if($author_count>=800 && $author_count<1200 && $comment_author_email !==$adminEmail) echo "СуперПупер"; else if($author_count>Профессор"; }
И в желаемом месте выводим функцию вызова:
comment_author_email,$comment->user_id)?>
Объяснение: функция, как и предыдущая, связана с электронной почтой юзера. Только здесь основной задачей является непросто счет сообщений, а количество от и до в зависимости от установленного числа. И как только пользователь достигает его он получает определенную должность. Всего статусов имеется 7, плюс админ и знак отличия для зарегистрированных участников.
Вот мы и подошли к концу этой статьи. Тут я не поленился, собрав все функции, включая настройку комментариев в один готовый код. Добавил свои стили оформления внешнего вида и в результате получилось что-то вроде мини-форума.
Открываем файл functions.php и в конце перед знаком?> добавляем следующий код:
//подсчет сообщений пользователей function bac_comment_count_per_user() { global $wpdb; $comment_count = $wpdb->get_var("SELECT COUNT(comment_ID) FROM ". $wpdb->comments. " WHERE comment_author_email = "" . get_comment_author_email() ."" AND comment_approved = "1" AND comment_type NOT IN ("pingback", "trackback")"); if ($comment_count == 1) { echo " 1 Сообщение"; } else { echo " " . $comment_count . " Сообщений"; } } //статус пользователя function get_author_class($comment_author_email,$user_id){ global $wpdb; $adminEmail = get_option("admin_email"); $author_count = count($wpdb->get_results("SELECT comment_ID as author_count FROM $wpdb->comments WHERE comment_author_email = "$comment_author_email" ")); if($comment_author_email ==$adminEmail) echo "Админ"; if($user_id!=0 && $comment_author_email !=$adminEmail) echo "UseR"; if($author_count>=1 && $author_count<50 && $comment_author_email !==$adminEmail) echo "Прохожий"; else if($author_count>=50 && $author_count<100 && $comment_author_email !==$adminEmail) echo "Новичок"; else if($author_count>=100 && $author_count<250 && $comment_author_email !==$adminEmail) echo "Знающий"; else if($author_count>=250 && $author_count<400 && $comment_author_email !==$adminEmail) echo "Опытный"; else if($author_count>=400 &&$author_count<800 && $comment_author_email !==$adminEmail) echo "Бывалый"; else if($author_count>=800 && $author_count<1200 && $comment_author_email !==$adminEmail) echo "СуперПупер"; else if($author_count>=1200 && $comment_author_email !==$adminEmail) echo "Профессор"; } //пользовательская настройка комментариев if (! function_exists("wordsmall_comment")) : function wordsmall_comment($comment, $args, $depth) { global $commentnumber; $GLOBALS["comment"] = $comment; switch ($comment->comment_type) : case "pingback" : case "trackback" : ?>
Теперь откройте файл comments.php , находим в нем функцию вызова комментариев. Выглядит примерно так:
Меняем на эту:
Заключительный шаг. Открываем файл style.css и в конце прописываем следующие стили:
My_commentlist{ border-top:none; } .my_commentlist .comment{ padding:0 0 15px 0; border:none; } .my_commentlist .pingback{ padding:0 0 15px 0; border:none; } .my_commentlist .comment .children { list-style-type: none; padding:0px; margin-left:0px;/*если нужен отступ для древовидных ком. поставьте 15px*/ } .my_commentlist .comment .children .comment{ margin:15px 0 0 0; border:none; padding: 0; } #comments { background: #fff; } #comments .my_commentlist { margin: 10px 0; padding: 0; list-style:none; background: #ebf0f3; padding: 5px; } #comments .my_commentlist .comment { margin:0; padding: 0 0 10px; background: #fff; } #comments .my_commentlist .my_comment-author { display: inline; border-right: 1px solid #e0e0e0; width: 100px; float: left; margin: 0px 15px 10px 0; } #comments .my_commentlist .commentmetadata { float:left; } #comments .my_commentlist p { clear:none; color: #555; font: 14px arial; line-height: 23px; } #comments .my_commentlist .comment-content { margin-left: 116px; padding-right: 10px; } #comments .my_commentlist .reply { text-align:right; } #comments .my_commentlist .reply a{ background: #f5f5f5; border: 1px solid rgba(0, 0, 0, 0.06); border-radius: 2px; color: #515456; display: inline-block; font-size: 13px; font-weight: normal; line-height: 30px; margin-right: 15px; min-height: 30px; padding: 0 12px; text-align: center; text-decoration: none; } .my_commentlist .avatar{ border: medium none; border-radius: 50%; float: none; margin: 5px auto; padding: 0px; display: table; } .my_commentlist .comment-header{ height: 30px; background: #DEE5EB; margin-bottom: 15px; } .my_commentlist cite.fn{ color: #444; font: bold 13px/30px arial; padding-left: 10px; } .my_commentlist .com_date { color: #8ca0b5; font: normal 13px/30px arial; float: right; padding-right: 15px; } .my_commentlist .commentnumber { color: #8ca0b5; float: right; font: italic 13px/30px arial; padding-right: 15px; } .my_commentlist .comment-body { overflow: hidden; position: relative; background:#fff; } .my_commentlist .rep-authorcom { color: #25394e; font-size: 13px; line-height: 30px; } .my_commentlist .edit-link a { background: none !important; border: none !important; border-radius: 0 !important; color: #999!important; display: inline-block; font-size: 11px !important; font-weight: normal; line-height: 30px; margin-right: 5px !important; min-height: 30px; padding: 0 !important; text-align: center; text-decoration: none; } .com_per { border: medium none; color: #666; display: block; font-size: 11px; text-align: center; } .vip1,.vip, .vp, .vip2, .vip3, .vip4, .vip5, .vip6, .vip7 { border: medium none; font: bold 13px arial; display: block; text-align: center; margin-bottom: 5px; text-decoration: none; } .vp {color: #e82e24;} .vip1 {color: #348be8;} .vip2 {color: #BE005E;} .vip3 {color: #2e517e;} .vip4 {color: #658a18;} .vip5 {color: #00A56D;} .vip6 {color: #e35d28;} .vip7 {color: #99A400;} .vip {color: #4c5176;font-size: 11px;margin: 0;}
Код полностью рабочий и не вызывает ошибок, но могут понадобиться мелкие правки в стилях CSS.
Многим такое название не мешает, но иногда встает вопрос как изменить добавить комментарий на оставить отзыв или подобное. В этом случаи вам и поможет данная статья. Как и написал выше, покажу пару способов.
Для первого способа, вы должны в папке с темой, что установлена у вас на сайте, найти файл comments.php . Если такой есть, открыть его и поискать в нем массив, отвечающий за настройки и вывод содержания формы комментариев. Выглядит он примерно так:
$args = array("comment_notes_before" => "
", "comment_field" => "", "id_submit" => "comm_subm", "label_submit" =>Так вот, к этому массиву, нужно добавить новый параметр с нужным значением и все. В нашем случаи, это:
"title_reply" => "Оставить свой отзыв",
Как понимаете - Оставить свой отзыв , это и есть новое название вместо - Добавить комментарий. Добавить такой параметр можно в конец или в начало массива. Получится как-то так:
$args = array("title_reply" => "Оставить свой отзыв", "comment_notes_before" => "
Заполните поля ниже. Ваш e-mail не будет опубликован. Обязательные поля помечены *
", "comment_field" => "", "id_submit" => "comm_subm", "label_submit" => "Отправить",); comment_form($args);Добавлено в начало и теперь, на страницах записей будет выводится строка - Оставить свой отзыв. Этот способ не сложный и требует минимальных сил, главное правильно определить массив. Но иногда так бывает, что внутри темы нет файла comments.php или в нем нет массива и вы не знаете как правильно его туда добавить, тогда вам поможет второй способ.
Суть второго способа заключается в том, чтобы добавить новую функцию, которая и сделает замену названия. Для этого в папке с активной темой, нужно найти файл function.php с пользовательскими функциями и в удобное место, если не знаете такого, то в самый конец перед закрывающим тегом PHP - ?> , если такого нет, то просто в самый конец, добавить вот такой код:
Function wph_change_submit_label($defaults) { $defaults["title_reply"] = "Оставить свой отзыв"; return $defaults; } add_filter("comment_form_defaults", "wph_change_submit_label");
Это то же самое, по сути что делалось и в первом способе, просто, там мы внедряли непосредственно в массив, а тут через фильтр. После этих действий, вы увидите изменение в названии. Как и в первом способе, можете поменять текст - Оставить свой отзыв, на тот что вам нравится. Данный текст указан как пример.
Еще хочу предложить и обратить внимание на склонение слова Комментарии. Если у вас выводит в форме строку - Опубликовано 1 комментарий или Комментариев: 10. Можете воспользоваться Функцией из статьи . Если вы уже пользуетесь ней, то рекомендую в строке с массивом:
Array("комментарий","комментария","комментариев")
Изменить названия на отзыв,отзыва,отзывов, если вы использовали это слово в способах выше. таким образом, у вас будет все одинаково, а не в разброс, там отзывы, а там комментарии.
Вот такую информацию, хотел сегодня вам предоставить. Возможно, кому-то она станет полезной.
На этом все, спасибо за внимание. 🙂
Недавно один из наших читателей спросил, возможно ли разрешить анонимное комментирование в WordPress. По-умолчанию, пользователи не могут оставлять комментарии в WordPress без указания имени и адреса электронной почты в форме комментариев. В этой статье мы покажем вам как разрешить пользователям оставлять комментарии анонимно в WordPress. Также мы покажем вам как скрыть поля имени и email из формы комментирования.
Самый лучший способ разрешить анонимные комментарии в WordPress — поощрять пользователей использовать псевдонимы или никнеймы вместо реального имени.
Это позволит вам построить сообщество, и в то же время вы разрешите пользователям оставаться анонимными. Комментаторам все равно придется оставлять свой email адрес, однако большинство людей, желающих оставаться неизвестными, будут пользоваться дополнительным ящиками.
Вы можете прописать такие варианты в политике комментариев и указать сквозную ссылку на них над формой комментариев.
В то время как это решение является идеальным, и единственным, которое мы рекомендуем, существуют и другие решения для анонимности авторов. Но помните, чем больше анонимности на сайте, тем больше на нем спама.
Следующий слой анонимности, который вы можете добавить, это сделать поля Имя и Email совершенно необязательными. Если пользователь отправляет только комментарий, без имени и почты, он пройдет. Давайте посмотрим на то, как сделать поля Имя и Email необязательными.
Первым делом вам необходимо перейти в раздел Параметры » Обсуждение административной панели сайта и снять галочку с «Автор комментария должен указать имя и e-mail». Теперь необходимо сохранить изменения и ваш сайт будет принимать комментарии без имени и почты.
Простое убирание этого чекбокса не сообщит пользователям о том, что теперь они могут оставлять комментарии без указания имени или почты. Уведомить их об этом можно, пометив соответствующие поля не обязательными. Также мы советуем убрать поле Сайт, чтобы уменьшить количество спама. Для этого необходимо модифицировать вашу форму комментирования. Просто скопируйте и вставьте следующий код в файл functions.php вашей темы или в :
Function wpb_alter_comment_form_fields($fields) { // Модифицируем поле Имя и отображаем его не обязательным $fields["author"] = "
"; // Модифицируем поле Email и отображаем его не обязательным $fields["email"] = "" . ($req ? "*" : "") . "
"; // Эта строка убирает поле Сайт из формы комментирования. $fields["url"] = ""; return $fields; } add_filter("comment_form_default_fields", "wpb_alter_comment_form_fields");Этот код просто добавляет (Не обязательно) к полям Имя и Email в вашей форме комментариев. Также он убирает поле Сайт из нее. Если же вы хотите оставить «Сайт», то просто удалите соответствующие строки кода. Вот так будет выглядеть ваша форма комментирования:
Для тех пользователей, которые хотят полностью убрать поля Имя и Email из формы комментариев, вот небольшой кусочек кода, который необходимо вставить в файл functions.php вашей темы или в :
Function wpb_alter_comment_form_fields($fields) { unset($fields["author"]); unset($fields["email"]); unset($fields["url"]); return $fields; } add_filter("comment_form_default_fields", "wpb_alter_comment_form_fields");
Если ваша форма отображает текст Your email address will not be published (Ваш email не будет опубликован), то вы можете скрыть ее путем редактирования файла comments.php темы. Найдите тег и замените ее следующим кодом:
"
" . __("Имя и email адрес не требуются.") . ($req ? $required_text: "") . "
")); ?>Если вы не можете найти comment_form , то вы можете просто скрыть этот текст путем добавления следующего кода CSS в вашу тему либо в дочернюю, в файл style.css :
Comment-notes { display:none; }
Вот так ваша форма комментариев будет выглядеть без полей имени, email и сайта:
Обратите внимание, что без обязательных полей имении почты ваша форма будет привлекать огромное количество спама. И пусть даже Akismet и Sucuri могут блокировать некоторые «плохие» IP, мы крайне рекомендуем добавить капчу, чтобы снизить поток спама.
Надеемся, что эта статья помогла вам разрешить пользователям анонимное комментирование в WordPress. Мы показывали множество стилей для форм комментирования, поэтому при желании узнать больше по этой теме, прочтите нашу статью
Дмитрий Дементий
Удобство и функциональность системы комментирования влияет на вовлеченность аудитории и количество комментариев на сайте. В этой статье вы найдете обзоры лучших внешних систем комментирования, которые помогут вам выбрать оптимальное решение.
Чтобы обсудить публикацию на сайте под управлением WordPress со штатной системой комментирования и стандартными настройками, вам придется вручную указать имя и адрес электронной почты. Такая же проблема существует у штатных систем для обсуждений других популярных движков. Из-за этого вы теряете много комментариев, так как пользователи не хотят тратить усилия на авторизацию.
Сторонние сервисы комментирования обеспечивают следующие возможности:
Ниже вы найдете обзоры возможностей наиболее удобных систем внешнего комментирования.
Владельцам сайтов доступны платные и бесплатные сервисы комментирования. В мини-обзорах есть общая информация о каждой системе, а также инструкции по установке и настройке на сайтах под управлением WordPress.
Disqus - самая популярная сторонняя система комментирования. По данным создателей, с ее помощью пользователи ежемесячно пишут на сайтах 50 млн комментариев.
Благодаря популярности сервис Disqus можно считать эталоном или отправной точкой для оценки других внешних систем комментирования.
На странице настроек сайта укажите название ресурса и выберите URL на платформе Disqus. С помощью выпадающего меню определите категорию, к которой относится ваш сайт. Нажмите кнопку Next.
На следующем шаге выберите план. Доступны следующие варианты:
На следующей странице система информирует, что с помощью Disqus можно монетизировать сайт. Функция доступна для ресурсов на английском языке. Нажмите отмеченную на иллюстрации кнопку, чтобы подтвердить, что вы ознакомились с этой возможностью системы.
Выберите платформу, на которой работает ваш сайт. Если готового решения нет, используйте универсальный код.
Система предложит вам инструкцию по установке плагина Disqus для WordPress. Действуйте так:
Вы установили плагин и подключили систему комментирования к сайту. Теперь пользователи могут обсуждать ваши публикации. А вам нужно уделить внимание настройкам сервиса.
Перейдите в меню настроек сообщества на сайте Disqus. На вкладке Settings в разделе General укажите URL сайта. Убедитесь, что напротив опции Enable recommendations for your site установлен флаг. Выберите язык интерфейса комментариев. Сохраните изменения.
В разделе Community в поле Moderator Badge Text выберите текст, который будет отображаться напротив имени пользователей с правами модераторов. С помощью выпадающего меню выберите принцип отображения комментариев. Доступны следующие вариант: сверху новые, сверху старые и сверху лучшие.
Если необходимо, разрешите оставлять комментарии анонимным пользователям. Обратите внимание, такие комментаторы не получают уведомления об обновлениях дискуссии. Это уменьшает их вовлеченность. Кроме того, возможность оставлять комментарии анонимно может привлекать на сайт троллей и спамеров.
Установите флажок напротив опции Links in Comments. В этом случае система автоматически отправит на модерацию любые комментарии со ссылками. Убедитесь, что напротив опции Media Attachments установлена галочка. Это разрешение публиковать в комментариях изображения и видео.
Установите флажки напротив двух опций в разделе Flagged Comments. Так вы позволяете пользователям оповещать модераторов о нежелательных комментариях. Также после указанного с помощью выпадающего меню числа отметок система скроет подозрительный комментарий до рассмотрения жалобы модератором. Сохраните изменения.
В личном кабинете Disqus на вкладке Community вы можете следить за количеством комментариев и отметок «Нравится» и «Не нравится», назначать модераторов, импортировать и экспортировать комментарии. Обратите внимание, экспорт комментариев в Disqus позволяет создать резервную копию файла с комментариями. Эту функцию нельзя использовать, чтобы перенести пользовательский контент в альтернативную систему комментариев.
Обратите внимание на функцию Word Filter. В соответствующем меню можно добавить стоп-слова, при использовании которых система отправит комментарий в папку «Спам».
В меню Moderate Comments отображаются все комментарии. Обратите внимание, комментарии на проверке находятся в папке Pending. Они не отображаются на сайте, если их не одобрил модератор. На вкладках Spam и Deleted можно просмотреть спам-сообщения и удаленные комментарии.
Полезный совет: быстро одобрить или удалить комментарий можно с помощью электронной почты. Для этого достаточно ответить на электронное письмо с уведомлением о новом сообщении на сайте. Чтобы одобрить комментарий, в ответе укажите Approve, чтобы удалить или отправить в папку спам укажите Delete и Spam соответственно.
Самая популярная внешняя система комментирования имеет несколько недостатков. Вот наиболее важные из них:
Популярность и функциональность превратили Disqus в эталонную внешнюю систему комментирования. Ее достоинства и недостатки можно использовать при оценке альтернативных сервисов.
Cackle - платное решение. Очень похоже, что разработчики учли недостатки Disqus и особенности русскоязычных проектов. Благодаря этому система получила важные преимущества: индексацию комментариев поисковиками и возможность авторизации через аккаунты в популярных в рунете сетях. О других возможностях системы ниже.
После регистрации и подтверждения аккаунта система предложит создать новый виджет. Укажите URL сайта и название виджета и нажмите кнопку «Продолжить».
Система предложит универсальный код виджета или код для популярных CMS. Выберите нужный вариант.
Чтобы использовать систему Cackle на сайте под управлением WordPress, установите плагин Cackle . В консоли WordPress выберите меню «Комментарии – Cackle настройки». Скопируйте из административной панели Cackle сгенерированные ключи к API и ID сайта. Вставьте их в соответствующие поля в меню настроек плагина в WordPress. Активируйте виджет.
Экспортируйте существующие комментарии в систему Cackle. Синхронизируйте виджет с базой данных WordPress.
Между прочим:
Интерфейс формы комментирования Cackle очень похож на интерфейс Disqus. Пользователям, знакомым с Disqus, будет просто использовать Cackle.
Обратите внимание, система поддерживает кросспостинг сообщений «Вконтакте». Эта функция включена по умолчанию. С одной стороны, это может способствовать увеличению охвата аудитории. С другой, пользователей может раздражать публикация сообщений в их профиле без спроса.
Чтобы использовать все возможности сервиса, уделите внимание настройкам. В административной панели Cackle выберите соответствующее меню. На вкладке «Общие» уделите внимание пункту «Удаление комментариев». Вы можете запретить эту возможность или разрешить в течение нескольких минут после публикации. Также в общих настройках можно выбрать текст значка модератора и изменить порядок расположения иконок социальных сервисов, через которые можно авторизоваться.
В расширенных настройках обратите внимание на следующие пункты:
Остальные настройки измените на свое усмотрение или сохраните вариант по умолчанию.
На вкладке «Внешний вид» обратите внимание на пункт «Пагинация». Пагинация ухудшает юзабилити комментариев. Чтобы решить проблему, с помощью выпадающего меню укажите пункт «Выбрать» и укажите большое значение в поле «Максимальное число комментариев на странице».
На вкладке «Капча» можно подключить сервис reCAPTCHA от Google , а на вкладке «Спам защита» есть возможность подключить антиспам-сервис Akismet.
Модерировать комментарии можно в консоли WordPress или в административной панели на сайте Cackle. Также вы можете установить мини-виджет модерации. С его помощью модерировать комментарии можно непосредственно на сайте.
Cackle - платный сервис. Это его главный недостаток по сравнению с Disqus. Стоимость использования на одном сайте составляет 200 рублей в месяц. Стоит ли тратить деньги ради возможности авторизации пользователей через «Вконтакте» и «Одноклассники»? Это главный вопрос, по результатам ответа на который владелец конкретного сайта должен принимать решение.
Еще один недостаток сервиса - неочевидность возможности участия в дискуссиях для пользователей, не имеющих профилей в социальных сетях. Если вы отключите возможность оставлять анонимные комментарии, система предложит читателю войти через соцсеть. В качестве альтернативы пользователь может зарегистрироваться на сайте Cackle. Но для этого он должен найти отмеченный на иллюстрации значок.
HyperComments - платная система комментирования, которая поддерживает авторизацию с помощью профилей в популярных в рунете сетях. Пользователям доступны три тарифа:
Кроме авторизации через «Вконтакте», HyperComments имеет другие важные преимущества. Это функция гиперкомментариев, которая позволяет выделять фрагмент текста и обсуждать его. Также комментаторы могут делиться цитатами со своими подписчиками. Подробнее о возможностях системы дальше.
Нажмите кнопку «Далее». Система перенаправит вас на страницу плагина HyperComments в каталоге WordPress. Установите и активируйте плагин. В консоли сайта выберите меню «Комментарии – HyperComments» и авторизуйтесь с помощью аккаунта Google. На странице настроек выберите вкладку Settings. Импортируйте в систему существующие комментарии.
Остальные базовые настройки можно не менять. Расширенные настройки доступны на вкладке Comments в соответствующем меню.
В разделе «Общие» включите уведомления администратора и модераторов о публикации нового комментария. При необходимости включите премодерацию всех комментариев.
В разделе «Структура» при необходимости снимите флаг напротив поля «Разрешать комментарии от гостей». В этом случае пользователи смогут отправить сообщение только после авторизации через социальную сеть. Если вы допускаете агрессивные способы увеличения охвата, включите кросспостинг сообщений.
В разделе «Цитаты» включите соответствующий виджет. Он позволяет пользователям выделять отрывок текста и делиться им с подписчиками в социальных сетях.
В разделе HyperComments сохраните настройки по умолчанию. Эта функция позволяет комментировать отдельные фрагменты текста.
В разделе «Стереокомментарии» можно включить соответствующую функцию. Она объединяет комментарии в две колонки: сообщения автора и всех пользователей. При необходимости можно добавить в колонку автора логотип компании.
Главный недостаток системы - отсутствие бесплатного тарифа.
Сервис дискриминирует пользователей, не имеющих аккаунтов в соцсетях. Если вы отключите возможность анонимного комментирования, такие посетители не смогут оставить сообщение.
Еще один важный недостаток - система по умолчанию не сообщает пользователям о появлении новых комментариев. Это снижает вовлеченность аудитории.
IntenseDebate - внешняя система комментирования, которую разработала корпорация Automattic Inc. Один из главных проектов компании - сервис хостинга сайтов WordPress.com. Поэтому IntenseDebate особенно удачно интегрируются с CMS WordPress.
IntenseDebate - бесплатный сервис. Его функциональность не уступает эталонному Disqus. Система обеспечивает владельцам сайтов следующие возможности:
Чтобы воспользоваться возможностями системы, установите ее на сайт и настройте.
После регистрации в системе перейдите на страницу установки системы комментирования . Укажите URL ресурса. Если вы пользуетесь WordPress, установите и активируйте плагин IntenseDebate. Авторизуйтесь на странице настроек в консоли WP.
В личном кабинете на сайте IntenseDebate включите уведомления о публикации новых комментариев. Переключите язык на русский.
В меню Layout личного кабинета при необходимости измените внешний вид кнопок, размер аватаров пользователей и уведомлений о новых сообщениях. Для предупреждения пагинации комментариев выберите в поле Comments per page максимальное значение. При необходимости укажите текст, который будет отображаться под формой комментирования.
В меню Comments включите возможность авторизации с помощью Facebook и Twitter. Воспользуйтесь подсказками системы, чтобы создать приложение Facebook и получить ключ API. Установите флаг напротив меню Enable «Report this comment» button. Вы включите кнопку «Пожаловаться на комментарий». Выберите вариант отображения трэкбэков. Они могут публиковаться вместе с пользовательскими комментариями или в отдельной области. Для большинства проектов подходит второй вариант.
При необходимости установите на сайт дополнительные виджеты. В соответствующем разделе личного кабинета доступны такие надстройки:
Модерировать сообщения можно в консоли WordPress в меню «Комментарии».
Главный недостаток IntenseDebate - отсутствие интеграции с популярными в рунете сетями, например, «Вконтакте». Для участия в дискуссиях пользователям придется авторизоваться с помощью аккаунтов в Facebook, Twitter, WordPress.com, регистрироваться на IntenseDebate или указывать имя и электронный адрес.
Разработчики позиционируют Tolstoy comments в качестве бесплатной системы построения сообщества пользователей сайта . Это не система комментирования в традиционном виде, а виджет чата, в котором могут общаться читатели. Процесс общения игрофицирован с помощью системы значков и рейтингов.
После регистрации на платформе система предложит вставить код виджета на все страницы сайта.
Если все сделано верно, на сайте появится виджет комментариев.
В панели управления на сайте Tolstoy comments настройте размеры виджета. Выберите подходящее время загрузки виджета. Остальные настройки можно не менять.
Информация о сообщениях доступна администратору в режиме реального времени в разделе личного кабинета «Модерация». Пользователи видят на страницах сайта виджет с указанием количества комментариев и всплывающее окно с самыми рейтинговыми комментариями.
Пользователи могут оценивать комментарии. А за активность система присваивает комментаторам значки.
На каждой странице сайта виджет создает отдельный чат. Но список чатов доступен пользователям с любой страницы сайта по ссылке «Все чаты».
Главный недостаток – хранение комментариев на сервере Tolstoy comments, а не в базе данных сайта. Из-за этого пользовательский контент не индексируется. Разработчики планируют в будущем решить эту проблему.
В обсуждения на сайте Tolstoy comments пользователи говорят, что виджет замедляет работу сайтов. На тестовой площадке такого эффекта я не заметил.
Вместо универсальных кроссплатформенных решений некоторые владельцы сайтов устанавливают форму комментирования одной социальной сети. Обычно это Facebook или «Вконтакте». На некоторых ресурсах есть сразу две формы комментирования.
Чтобы установить форму комментирования Facebook, воспользуйтесь
(в которой мы убирали теги h3 в заголовке перед формой комментирования) — сегодня заставим функцию формы комментов WP работать целиком по нашим правилам:
получим возможность задавать собственные стили, менять на своё усмотрение заглавие «Добавить комментарий», исключать при необходимости определённые окошки ввода информации, например форму url, настраивать placeholder и т.д. а, главное, не потерять всё это при обновлении движка.
Нынче мы запросто выполним нашу цель, всего лишь редакцией файла функций. И коли вы чувствуете в себе силы редактировать код сайта (этот способ чуть сложнее от того, который описан ранее)…
Начнём концерт:
Как известно, править ядро WordPress (файлы CMS) не рекомендованное занятие, в большей степени из-за того, что после обновления движка теряются наработки! Тем паче у начинающих администраторов ресурсов, эти обновления вордпресс совершаются внезапно (без их ведома) как этого избежать, читайте в этой .
Непременно да! …тут не может быть и разногласий! …однако это чревато, как и говорилось, тем что обновление движка затирает редакции администратора!
Посему многие веб мастера, для более гибких настроек своего сайта, используют всевозможные фильтры (хаки): тоже неплохо! Однако я (и не только один я) предпочитаю какие-то второстепенные (относительно важности постоянных обновлений) функции ядра WP переносить в корень шаблона.
Таким образом выводить необходимые регулировки в файлы темы, чтобы на уровне шаблона управлять государством сайта: без всяких потерь)
Приступим к редакции, но!!
…напоминаю всякий раз: заведите какой-то документ «запоминалку» всех совершаемых эксов с блогом. Копируйте редактируемые файлы. Пригодится!
Поверьте: так короче до профессионализма, ибо возможность переварки накопленных крупиц знаний в кашу маловероятна!
Что нам нужно для достижения цели:
перенести из ядра WP (из файла comment-template.php) отработку функции comment_form в директорию шаблона.
Переходим по этому пути ваш_домен/wp-includes файл comment-template.php
…открываем его (или прямо на хостинге — я делаю так), или скачиваем и редактируем в Нотепад++ — читать: как настроить Notepad++
Ищите такую строку (примерный № строки 2111)
function comment_form($args = array(), $post_id = null) {
do_action("comment_form_comments_closed");
Всё это копируете и переносите к себе в файл функций functions.php .
Обычно, все новые добавления кода помещают перед закрывающим тегом?> . Но я рекомендую добавляемый код группировать, так сказать, по теме, тогда всё запросто при необходимости отыщете.
Следующим шагом будет изменение имени функции: можете назвать её как угодно душе, хоть именным вензелем обозначить… У меня получилось так:
function my_my_ comment_form
Сохраняем наработки…
…и переходим в файл вашей темы comments.php .
В этом файле нам нужно поменять имя вызова функции, на то, которым обозвали на первом шаге:
Отыскиваете в документе такую фразу (она обычно в его финале): и просто-напросто добавляете my_my_ ну или своё имя.
Должно получиться так:
…теперь задача вызова новой функции выполнена: логика шаблона станет использовать именно наш перекопированный в тему код!
Что нам и требовалось!
Теперь всё что вам остаётся выполнить, так это подредактировать под свои нужды код новоиспечённой функции my_my_comment_form();
…или задают индивидуальную отработку placeholder — посмотрите как выглядит это у меня:
…у меня в окошке формы комментирования расположен вензель «Ваш комментарий…» который исчезает, как только комментатор набирает своё послание…
…и тому… и тому… подобное.
Есть какие-то вопросы по добавлению/уборке элементов формы комментирования, пишите, разберёмся…
или вот можете почесть пост о полезных сниппетах (