Привет, мои дорогие друзья и читатели – Sozdaiblog.ru!

Прочитав статью до конца, Вы узнаете, как установить топ комментаторов на WordPress без плагинов.

Пример такого виджета, Вы можете увидеть Веб-сайтах. Обычно его называют – «Лучшие комментаторы”.

Чтобы установить эту полезность на свой блог, можно использовать специальные плагины.

Но я, пытаюсь увеличить скорость загрузки блога, а плагины её только уменьшают.

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

 

Как установить – «Топ комментаторов», без плагинов.

Для вывода топа комментаторов, Вам потребуется покопаться в теме Вашего блога и найти файл – «functions.php».

Затем, его нужно открыть в удобном для Вас редакторе (советую Notepad++), опуститься в самый низ и отыскать закрывающий элемент – «?>».

Перед ним, Вы должны вставить следующий код:

 

// комментаторы без плагинов
 function top_commentator(){
 global $wpdb;
 $month = false; // true - за текущий месяц, false - за все время

 $nofollow = true; // ссылки nofollow
 $count = 9; // количество комментаторов
 $col = 3; // количество колонок
 $avatarSize = 60; // размер аватара
 $exceptionEmail = 'SOZDAIBLOG@yandex.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='avatar-top'>".get_avatar($result->comment_author_email,$avatarSize)."</div><div class='avatar-comment'>";
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;
 }
// комментаторы без плагинов

 

Данный код будет отвечать за функционал и настройку, Вашего топа комментаторов. Если Вы внимательно рассмотрите его начало, то там можно увидеть различные настройки. Всё на русском, думаю, разберётесь.

Далее, всё в той же теме вашего оформления, потребуется найти файл – «style css». Находим, и в самом конце прописываем вот такой код:

 

.top-comment{height:100%;}
.top-comment table{min-height:100%;height:100%;border:none;}
.top-comment table td{padding:0 5px 15px 5px;border:none}
.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 #aaa;margin:0 0 3px 0;}
.top-comment .avatar-comment{font-size:12px;display:block;line-height:1em;margin-top:1px;width:50px}

 

Этот код, будет отвечать за внешний вид, лучших комментаторов блога.

Теперь, копируете последний код:

 

<?php top_commentator(); ?>

 

и вставляете в то место, где желаете выводить виджет. Обычно, это боковая колонка, за которую отвечает файл – «sidebar.php».

После этого, всё должно заработать.

Если, что-то не получается, обращайтесь за помощью через форму комментариев, буду рад помочь!

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

А пока, можете ознакомиться с другой, не менее полезной информацией:

 

 

На сегодня это всё. До новых статей…

С уважением, Денис Черников!