Комментарии к посту – это показатель интересности его для читателя, как уникального контента и прекрасный показатель оживлённого блога. Самый популярный способ привлечения комментаторов на блог – сделать его dofollow (наш сайт является таковым). Оставить открытые ссылки в комментариях под именем комментатора. Но есть и другой путь – сделать топ комментаторов.
Думаю каждому будет приятно быть на первых позициях в списке наиболее активных комментаторов на всех страницах Вашего блога. Каждое имя – ссылка на сайт комментатора. Такие ссылки имеют больше веса, чем ссылки в комментариях. Такие ссылки называются сквозными(сквозняками) – они видны на любой странице. Они привлекательны для блогеров, из которых и так выходят лучшие комментаторы, то есть станут приятной наградой блогеру за комментарий. Данный ТОП способствует повышению поведенческого фактора блога за счет стремления комментаторов попасть как можно выше в этот списке. Особенно, если ссылки открытые, то мотиватор становиться просто непреодолимый, всем так и хочется получить внешнюю ссылку на свой блог
[spoiler name=”Необходимые данныеДля открытия – нажмите“]
Многие пользуются специальным плагин для этого (например:
Создаем топ комментаторов
Как создать топ комментаторов в WordPress без плагина узнали из статьи:
Открываем файл functions.php в вашем шаблоне и добавляем код:
function sp_top_commentator(){ global $wpdb; $length = 8; // Максимальная длинна имени в символах, если стоит 0, то имя не обрезается $month = true; // true - за текущий месяц, false - за все время $comment = true; // показывать количество комментариев $nofollow = true; // ссылки nofollow $count = 12; // количество комментаторов $col = 3; // количество колонок $avatarSize = 50; // размер аватара $exceptionEmail = 'info@studio-gost.ru, yoky2003@mail.ru'; // мыла-исключения $results = $wpdb->get_results(' SELECT COUNT(comment_author_email) AS comments_count, comment_author_email, comment_author, comment_author_url FROM (select * from '.$wpdb->comments.' order by comment_ID desc) as pc WHERE comment_author_email != "" AND comment_type = "" AND comment_approved = 1 AND comment_author_email NOT IN ('.preg_replace('/([\w\d\.\-_]+@[\w\d\.\-_]+)(,? ?)/','"\\1"\\2',$exceptionEmail).')'. ($month ? 'AND month(comment_date) = month(now()) AND year(comment_date) = year(now())' : ''). 'GROUP BY comment_author_email ORDER BY comments_count DESC LIMIT '.$count ); $output = "<div class='top-comment'><table width='100%'><tr align='center' valign='top'>"; $i = 0; foreach($results as $result){ if ($i>=$col) { $output .= "</tr><tr align='center' valign='top'>"; $i = 0; } $i++; $output .= "<td><div class='obvod-foto'>".get_avatar($result->comment_author_email,$avatarSize)."</div><div class='avatar-comment'>"; if ($length and $length<mb_strlen($result->comment_author)) $result->comment_author = trim(mb_substr($result->comment_author, 0, $length)).'.'; if ($result->comment_author_url) if ($nofollow) $output .= "<a target='_blank' rel='nofollow' href='".$result->comment_author_url."'>".$result->comment_author."</a>"; else $output .= "<a target='_blank' href='".$result->comment_author_url."'>".$result->comment_author."</a>"; else $output .= $result->comment_author; if ($comment) $output .= " (".$result->comments_count.")"; $output .= "<div style='clear:both;'></div></div></td>"; } if ($i<=$col) $output .= "</tr>"; $output .= "</table></div>"; echo $output; }
Теперь вызываем созданную функцию в любом месте блога (например в sidebar.php или в footer.php) следующим кодом:
<?php sp_top_commentator(); ?>
Добавляем стилей к нашему блоку топ комментаторов, вставляем ниже указанный код в файл style.css:
[crayon lang=”css”].top-comment {
height:100%;
}
.top-comment table {
min-height: 100%;
height:100%;
}
.top-comment table td {
padding:0 5px 15px 5px;
}
.top-comment .avatar-top img {
-webkit-box-shadow: #666 0px 2px 3px;
-moz-box-shadow: #666 0px 2px 3px;
box-shadow: #666 0px 2px 3px;
padding: 3px;
background: white;
border-image: initial;
border: 1px solid #D0D0BB;
margin: 0 0 3px 0;
}
.top-comment .avatar-comment {
font-size: 12px;
}[/crayon]
Конечно же в своем блоге вам придется менять эти стили, на свои т.к. дизайн у нас у всех разный (я надеюсь).
Вот мы и узнали как сделать топ комментаторов без плагина в WordPress, но это еще не все.
А так же у нас есть и топ комментаторов в боковой панели. И поэтому у нас стартует с начала Марта ежемесячная акция “Лучший комментатор месяца”. Подробности читайте по ссылке.
[/spoiler]
Топ комментаторов создает внутренний конкуренцию среди комментаторов. Стоит заметить, что не стоит пропускать бестолковые комменты, написанные только ради ТОПа. И у Ваших читателе будет стимул зайти еще раз и оставить пару комментариев, чтобы его аватарка красовалась выше всех.
41 комментарий
Очередной, отличный пост, в wp нужно отказываться от плагинов для снижения нагрузки. И шаблоны при этом проще уникализировать. Еще раз спасибо за пост.
А так совсем нагрузки не будет что ли?
Каждый плагин создает нагрузку на сервер, а каждый отказ от плагина снижает эту самую нагрузку.
И в итоге это все равно приведет к спаму…
Сугубо мое личное мнение, но в погоне за ТОПом эти “лучшие” комментаторы легко свалятся до уровня флуда, лишь бы красоваться выше всех…
А администратор вам на что? Естественно за этим следить надо (флудом и спамом).
Спасибо за хороший урок.
Если администратор не следит за спамом, то и без топа все будет захламлено бесполезными комментариями.
Спасибо за урок! Попробую сделать топ комментаторов без плагина.
Интересная статья, как раз то что было нужно, правда одна ошибка выходит. Почему-то все аватары изменились, и только мой аватар функционирует а остальные нет. В чем дело? вы не в курсе?
Точно не знаю, у меня все работает корректно. Посмотрите настройки обсуждения в самом wordpress. Там есть настройки аватаров, может это поможет.
Некоторые сейчас считают обезличенные комментарии бесполезными и переходят только на комментарии из соц сетей. Не могу не согласиться с таким мнением, но какой железобетонный аргумент противоставить на такие заявки тоже не знаю. 😈 Что скажите?
Аргумент один и весомый. Комментарий с соц. сетей не индексируются поисковиками и следовательно пост не обновляется и со временем теряет в позициях в выдаче.
Вставляю первый код и перестает работать сайт ошибка 500, что это может быть? Буду разбираться, если сможете помочь буду благодарна(
не в правильном месте вставили код
Вы пишете что ваш блог дофолов. Что-то я не заметил этого.
Петр, да наш блог является таковым, но с недавнего времени внесены некоторые ограничения.
Так как пользователь новый, а уже смотри индекс. ссылки или нет. То осмелюсь сделать вывод, что он тут только ради ссылки – Банить его, банить ! 😉
На этот блог попал случайно, и не подозревал что он Dofollow. И вопрос задал не просто так – я составляю свой список дофолов блогов, а здесь я сразу не заметил что он такой. Кстати мой блог тоже nofollow free.
А Вас, интелегент, я встречал в топ комментаторов не только здесь. Это у Вас способ заработка такой?
Очередной раз пытался установить этот код, на этот раз с Вашей подсказкой…
Выносит сайт, приходится откатывать…
В первой же строке дает ошибку:
Синтаксическая ошибка : синтаксическая ошибка, неожиданный ‘;’, ожидая T_STRING или ‘(‘ в / главная / м / mudrilo / public_html / WP-содержание / темы / modxblog / functions.php на линии 33
Может, для последней версии WP он просто не подходит?
Дело вовсе не в версии, т.к. на этом сайте все работает на последней версии.
Скорей всего, вы не правильно вставляете данный код в свой шаблон.
Как пример, Вашу версию кода копирую и вставляю в самый низ страницы кодов functions.php, перед вопросительным знаком… Пишу свой е-мэйл в нужном месте. сохраняю. Загоняю в корневую. И на этом ВСЕ!!! Сайт намертво блокируется! Больше ничего и никуда поставить невозможно…
Разве как-то по другому надо ставить?
P.S. Игорь, подскажите пожалуйста, каким способом можно установить Вашу версию блока комментариев? Древовидную, с возможностью отменить ответ… Ничего похожего и настолько функционального что-то не нахожу…
Попробуйте вставить код в самом начале, как показано в видео. Про комментарии возможно будет целая статья.
сделал все как сказали пишет ошибка что делать? помогите
Попробуйте заново вставить функцию. Я ее перепроверил ошибок не нашел, но все равно поменял на код с этого блога. Как можете посмотреть блок на этом блоге работает.
Пробовала сделать ТОП комментаторов с помощью плагина Top commentators widget, но в моем шаблоне он совершенно не смотрится. Попробую-ка теперь без плагина обойтись.
По оставленным комментариям напрашивается вывод, что ваш код работает на вашем блоге, а у других ломает сайт. Может поставите кому-нибудь на блог топ комментаторов своими руками и внесете поправки в код?
Как видно из видео этот код работает даже на дэфолтовском шаблоне. Под всех не подстроишься, т.к. некоторые пользователи сами не понимают, что у них в шаблоне написано.
Попробовал я по вашей инструкции сделать топ, но увы. У меня на сайте два сайдбара, пробовал вставить сначала ничего не появилось, а потом вообще весь шаблон чуть не развалился. Хорошо, что я до этого сделал бэкап, сразу восстановил к прежнему состоянию. С плагином тоже не повезло. Я для себя решил, либо учиться и делать самому если есть время. Либо поручить “знающему дело”. А вообще еще лучше иметь друга фрилансера.
Вставил все коды без каких-либо осложнений.Спасибо автору за столь полезный материал! И главное – без ПЛАГИНОВ!
Теперь за топ комментаторов должна начаться борьба!
Поставил код и топ появился, но неравномерно. Расстояние между колонками разное и по ходу оно зависит от длинны подписей под ними, а сами подписи не выравниваются по центру под аватарами. Подскажите ка поправить стиль? Сайдбар шириной 188 пикселей
Во, как раз это я и искал, спасибо!
У меня не действует стиль на аватар. Как решить эту проблему?
CSS править надо под себя, стили я брал с своего блога. Естественно они всем не подойдут.
Спасибо больше за данный материал, очень помог 😉
Доброго времени суток, а вы не подскажите как вывести топ комментариев при помощи скрипта, а не функции?
Нет, я не знаю.
Спасибо большое!
Здравствуйте!
Сколько пытаюсь установить данный скрипт, но каждый раз ничего не выходит!
Ходил по различным блогам, пробовал установки каждого в итоге ничего! Авторы молчат, ничего не знают…
Даже вот шаблон сменил недавно, но увы топ без плагина работать не хочет!
Можете помочь? Заранее благодарен!
Если столько приложено усилий и ни в какую, то может проще поставить плагин для топ комментаторов?
Проблему решил давно, а плагин это не то! =)
Да, комментарии на блоге очень нужны и важны. Сам с этим стокунлся. Будем пробовать установить.
Благодарю за классную инструкцию, все работает, как часики… Уже поставил у себя на блоге, чтоб люди комментировали…