Правим отображение количества комментариев

Плюсануть
Поделиться
Класснуть

Комментарии Disqus

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

Но есть и недостатки. В основном всё сводится к тому, что он либо медленно, либо вообще не грузится. Плохо конечно, теряем комментаторов, но бля, Disqus же реально удобен.

Не забудьте заглянуть в конец поста, там небольшой конкурс на 1000 рублей.

Кстати, я даже писал о том, как установить Disqus на WordPress блог.

Но у дискуса есть сраный недостаток - он влазит в шаблон со своим счётчиком комментов. Говно в том, что почему то он не может определить правильное число комментов и ставит ссылку "View Comments" на комментарии. Неприятно, неудобно, плюс этим может довольно сильно покосячиться дизайн, с чем я и столкнулся на одном из сайтов. Правда недавно заметил, что более новые версии немного поправили этот косяк (вроде, не смотрел точно), но он подгружается черес javascript, и довольно часто не выполняет свою функцию, так и оставляя "View Comments".

Кто то ткнёт в меня пальцем и крикнет "пиздабол!", а зря. Да зайдите хотя бы к Димку (http://blog.dimok.ru) и посмотрите в правый нижний угол. Мало? Ок, гуглим запрос "View Comments" (в кавычках, да) и смотрим выдачу. У многих такая шняга, но всем похуй.

Мне такое не слишком понравилось и началось ёбство с пресловутым дискусом. В начале написал Сане (http://wa7sa34.cx) (бля, я так часто к нему заходил, что запомнил его домен), попросил рассказать чо да как, ибо у него всё тип-топ смотрится. Он няшечка, рассказал как всё сделал, и даже больше (мне нужно было только узнать как wordpress выводит число комментов). Попробовал у себя - не работает. Копал дальше.

В начале очень долго гуглил по запросу "disqus View Comments wordpress" и похожим, лазя по буржуйским сайтам. Нашёл даже один фикс, но он не работал (о чём многие писали автору). Больше поиск не принёс результатов.

Начал думать сам (и ебать моск одному товарищу). И как то утром я поборол эту гадость (аплодисменты)! Итак, ниже инструкция как поправить недочёт disqus.

  1. Лезем в файл disqus.php, который лежит в корне плагина. Открываем и ищем строки:
    add_filter('comments_template', 'dsq_comments_template');
    add_filter('comments_number', 'dsq_comments_text');
    add_filter('get_comments_number', 'dsq_comments_number');
    add_filter('bloginfo_url', 'dsq_bloginfo_url');

    Комментируем (или удаляем) вторую и третью строку. В результате у нас получится следующее:

    add_filter('comments_template', 'dsq_comments_template');
    //add_filter('comments_number', 'dsq_comments_text');
    //add_filter('get_comments_number', 'dsq_comments_number');
    add_filter('bloginfo_url', 'dsq_bloginfo_url');
  2. Всё в том же файле disqus.php ищем эту часть кода:
    // Mark entries in index to replace comments link.
    function dsq_comments_number($count) {
    global $post;if ( dsq_can_replace() ) {
    return '<span class="dsq-postid">'.$count.'</span>';
    } else {
    return $count;
    }
    }

    И комментируем её, добавив перед каждой строкой по 2 слеша (//), либо удаляем.

  3. В файл functions.php, который в папке с вашим шаблоном, добавляем такой код:
    function pluralize($value, $arg) {
    $number = abs($value);
    $a = $number % 10;
    $b = $number % 100;
    if (($a == 1) && ($b != 11)) {
    return $arg[0];
    } else if (($a >= 2) && ($a <= 4) && (($b < 10) || ($b >= 20))) {
    return $arg[1];
    } else {
    return $arg[2];
    }
    }

    Если такого файла нет, то просто создаём его.
    Этот код сделает счётчик кошерным, каким его не может сделать сам wordpress. Взято у Васи (http://vas3k.ru/work/django_ru_pluralize), там же и объяснение.

  4. И последнее. В шаблоне, в то место, где нужен счётчик комментариев, добавляем такой код:
    <?php echo get_comments_number() . " " . pluralize(get_comments_number(), array("комментарий", "комментария", "комментариев"));?>

Если ещё есть вопросы - жду в комментариях.

А так, собственно, всё. :) Теперь, когда сайт приобрёл более красивый внешний вид, задумайтесь - а продвижение сайта самостоятельно, сложно ли это лично для вас? Самое время подумать, сеошнеки борзеют, требуют больше бабла и времени, а позиции не растут. Надо всё брать в свои руки!

Ах да, я обещал конкурс. В общем у меня давно лежит купон Google AdWords на 1000 рублей. Он до 31-го января, истекает очень скоро. Поэтому конкурс простой. Ниже есть кнопка ретвита. Нажимаем её и постим в комментариях ссылку на твит и свой e-mail. Затем 30-го числа я наугад выбираю твит и отсылаю код. Если никто не будет участвовать - купон тупо станет просроченным. Думаю всё просто.

У вас свой бизнес? Или своя компания? Тогда вам явно нужна разработка сайтов. Это очень ответственный момент, ведь сайт вашей компании в сети - это как ваше лицо. Поэтому нужно доверить это только профессионалам. Рекомендую команду Serenity, качество исполнения вас точно порадует.

Нужна коневозка? Лол.

Последнее изменение записи: 28.12.2015 | Рубрика: Работа | Метки: , ,
Плюсануть
Поделиться
Класснуть