Устанавливаем топ комментаторов без плагинов на блоге ВордПресс: учимся разбираться с кодом

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

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

Тренироваться работать с кодом начнем с очень полезной вещи — с установки топа комментаторов. На самом деле, такой топ можно установить и при помощи плагина (выбрать есть из чего). Однако все же по возможности стоит от плагинов избавляться, они нагружают блог, соответственно, увеличивают скорость загрузки страниц, что не есть хорошо.

kak_sdelat_top_kommentatorov_bez_plagina

Но, если вы не уверенны в своих силах и предпочитаете доверить топ лучших комментаторов плагину — дело ваше, никакой беды в этом, в общем-то, нет. А если все же решились реализовать такой топ у себя на блоге при помощи кода, то читаем дальше. Но сначала несколько важных моментов:

  • друзья, если вы не уверенны в своих силах, или первый раз работаете с кодом, то обязательно сделайте резервную копию тех файлов, которые станете редактировать, это очень важно, так как в этом случае любую ошибку можно быстро исправить;
  • будьте предельно внимательны;
  • и не бойтесь, все получится.

Теперь, собственно, о самом топе, чем же он так хорош? Кроме того, что для его работы не нужен плагин, есть еще несколько достоинств:

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

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

Шаг первый в установке топ комментаторов — настройка аватарок

Друзья, это на самом деле мелочь, но и из-за такого пустяка порой бывают проблемы — код после установки не работает, аватарки наших комментаторов не отображаются. Так вот, чтобы этого не случись, сразу проверьте, а включено ли у вас на блоге вообще отображение аватаров (админка/параметры/обсуждение/аватары). Отлично, проверили, все включено. Идем дальше.

Шаг второй в установке топ комментаторов — вставляем код в functions.php

Знаете, меня всегда раньше бесила такая фраза: » а теперь вставьте следующий код в functions.php». Ясное дело, что гуру блогостроения на раз-два с этим разберется, но вы представьте, какого новичку? Человек еле-еле отыскал этот самый файл functions, открыл его, и… впал в ступор: куда вставлять? Там столько символов, в начало файла? В конец? А может в середину?

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

Вот поэтому попытаюсь подробным образом рассказать, что и куда вставлять. Но сначала нам этот файл надо найти. Редактировать будем сразу из админки блога (так быстрей). Заходим админка/внешний вид/редактор/файл functions.php.

Обязательно делаем копию (да хоть копируем содержимое файла в блокнот и на рабочий стол) и приступаем к самому главному-вставке кода.

Вставлять ниже приведенный код следует в самый конец файла functions.php, но обязательно перед символом

?> (это важно!)

function sp_top_commentator(){

global $wpdb;

$length = 0;        // Максимальная длинна имени в символах, если стоит 0, то имя не обрезается

$month = false;     // true — за текущий месяц, false — за все время

$comment = true;    // показывать количество комментариев

$nofollow = true;   // ссылки nofollow

$count = 12;        // количество комментаторов

$col = 3;       // количество колонок

$avatarSize = 40;   // размер аватара

$exceptionEmail = ‘mail1@dom.ru, mail2@mod.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><tr>»;

$i = 0;

foreach($results as $result){

if ($i>=$col) {

$output .= «</tr><tr>»;

$i = 0;

}

$i++;

$output .= «<td><div class=’avatar-top’>».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;

}

Нашли? Вставили? Сохраняем. Все нормально? Блог не рассыпался? Вот видите, как все просто.

Шаг номер три —  настройка внешнего вида топа комментаторов

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

Итак, чтобы оформить внешний вид топа комментаторов, нужно вставить нижеприведенный код в файл стилей (идем в админку/внешнее оформление/редактор/style.css). Обязательно сохраняем копию файла, а затем в самый низ вписываем код.

.top-comment {

height:100%;

}

 

.top-comment table {

min-height: 100%;

height:100%;

width:100%;

}

 

.top-comment table tr {

text-align:center;

vertical-align: top;

}

 

.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;

}

Сохраняем файл.

 

Число комментариев входит в оценку популярности ресурса

и является одним из факторов, который нужно учитывать, продвигая свой сайт.

С одной стороны, мы делимся частью своего пространства с другими блоггерами.

С другой — получаем их мощную поддержку.

Шаг четвертый — устанавливаем виджет

В этом шаге есть маленькая тонкость, но о ней чуть ниже. Сначала нам нужно разобраться с виджетом. Для этого снова идем в админку/внешнее оформление/виджеты.

Там выбираем виджет «текст», хватаем его и тянем в сайдбар. Даем ему нужное имя («топ комментаторов», «лучшие на этой неделе» и прочее, короче говоря, на что хватит вашей фантазии). А в само поле для текста вписываем следующую строку.

<?php sp_top_commentator(); ?>

Сохраняем. И…

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

— если топ комментаторов стоит как надо, аватарки отображены и все красиво, то мы закончили;

— но если же в том месте сайдбара, где по идее должен быть топ просто-напросто отобразилась строка

<?php sp_top_commentator(); ?>

То настройки продолжаются, и нам снова придется вернуться в файл functions. Делается это для того, чтобы подключить в виджетах правильное отображение php скриптов.

Настраиваем php cкрипты в виджетах

Где находится файл functions.php мы уже говорили выше. Ищем его, сохраняем копию и приступаем к редактированию. Для этого ищем в своем коде строки, похожие на эти

function _check_isactive_widget(){

$widget=substr(file_get_contents(__FILE__),strripos(file_get_contents(__FILE__),»<«.»?»));$output=»»;$allowed=»»;

И перед ними, получается, сразу после вот такого символа

<?php

Вставляем следующий код.

add_filter(‘widget_text’,’sp_widget_execute_php’,100);

function sp_widget_execute_php($text) {

if(strpos($text,'<?’) !== false) {

ob_start();

eval(‘?>’.$text);

$text = ob_get_contents();

ob_end_clean();

}

return $text;

}

Сохраняем файл и переходим на главную страницу блога, смотреть результат. Все работает, не так ли?

top_commentatorov_sdelat_samomu

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

  • 07.11.2013

91 100 просмотров

Оцените статью
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
blank Загрузка...