Show Top Commentators Облаком

The introduction for non-russian

Here is modification of popular WordPress plugin Show Top Commentators. It shows all commentators as cloud.

  • It show link only foк commentators who have more than 2 comments. Find $k->comment_comments > 2 and change it as you want.
  • Reduce $max_scale if you have too many commenters and commenters cloud looks bad.
  • Change ORDER BY comment_author ASC to ORDER BY comment_comments ASC/DESC if you wand to sort by comments quantity.
  • Usage and CSS you can find below.
  • Download Show Top Commentators Cloud plugin below.

Remarks and offers are accepted here.

Все любят топ комментаторов. Но что-то он стал скучным (особенно у меня гагага). А облако комментаторов — позабавней. Такое облако можно было видеть на блоге Заработай.lv, но это не плагин для WP, так как это и не WP.

Поэтому взял известный плагин Show Top Commentators и подправил его. Получилось как облако категорий (ну из него и копировал код  (: ).

Изменил в нем:

  • Вывод вобще всех комментаторов за месяц, а не 10 лучших. Это может стать проблемой, если комментаторов до жопы. С этим можно повоевать уменьшив минимальный и максимальный размеры шрифта. надо было добавить возможность задавать эти параметры при вызове функции, но пока что я просто прописал их в теле функции.
  • Порядок вывода комментаторов изменил на алфавитный. Ну это кому как нравится, не долго поставить вывод по количеству комментариев.
  • Еще ранее я добавил условие показа ссылки на сайт автора при количестве комментариев более двух. Это как MaxSite Comment Allow для топа комментаторов. Параметр надо тоже добавить в задаваемые при вызове функции.

Использование:

  1. Залить в папку плагинов.
  2. Активировать плагин
  3. Вставить код в сайдбар:

Для виджета:

<?php if(function_exists(‘ns_show_top_commentators’)) { ?>
<li>
<ul><?php ns_show_top_commentators(); ?></ul>
</li>
<?php } ?>

И впишите загловок блока.

Без виджета:

<?php if(function_exists(‘ns_show_top_commentators’)) { ?>
<ul><li id=»top-commenters»>
<h2>Лучшие комментаторы</h2>
<ul><?php ns_show_top_commentators(); ?></ul>
</li></ul>
<?php } ?>

Больше параметров вы можете найти на странице оригинала, ссылка на которую приведена выше.

Не забудьте настроить стили, как вам нравится. Вот примерно, как сделано у меня:

#sidebar ul li#top-commenters ul {
text-align: center;
}
#sidebar ul li#top-commenters ul li {
display: inline;
}
#sidebar ul li#top-commenters ul li a {
line-height: 1.3em;
display: inline-block;
}
#sidebar ul li#top-commenters ul li sub {
font-size:60%; color:#ccc;
}

Ключевые моменты: display: inline, хотя можно было бы без списка в самом плагине и обойитсь, а настрогать чисто <a href=»…» …>; display: inline-block, что решило проблему кривости показа в IE, как мне указалаи, а я до этого жил в неведении. Продуйте разные значения margin и padding.  Правда в Opera (кстати все еще не поставил 9.50, пора бы) получилось более разряжено чем в IE, более менее нормально смотриться при уменьшении $max_scale — эту переменную вы без труда найдете в коде плагина.

[dm]1[/dm]

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

Вобще, давно хотел уже как-нибудь использовать Download Manager, но с темами для WP пока ничего не замутилось, но вот хоть эту мелочь выложил.

Еще по теме:

Запись опубликована в рубрике Без рубрики с метками , , , , , . Добавьте в закладки постоянную ссылку.

33 комментария: Show Top Commentators Облаком

  1. Аниматор говорит:

    Ух какой я большой :)

    Отличная идея!

    Может сделаешь еще текст на английском, да на Дигг свое новшество запостишь, вдруг пропустят в топ, да и на Пропеллер можно тоже будет.

  2. art говорит:

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

  3. Аниматор говорит:

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

  4. art говорит:

    ну посмотрим, а новых блог на англ создать не долго, тем более домены есть свободные

  5. Аниматор говорит:

    тоже можно, но какбы не вызвать подозрение что блог сделан для вывода в топ Дигга :)

  6. Voeslav говорит:

    Что-то в ИЕ кривоватенько выводит (см. снимок экрана:
    http://www.ljplus.ru/img4/v/o/voeslav/Maxthon-Shot-06-12-08—16-38-45.png

  7. art говорит:

    ну домены зареганы некоторое время назад, можно че нить накидать задним числом (:

  8. art говорит:

    Voeslav, ясно, спасибо! поработаю со стилями. так то там просто ul список, каждый может настроеить оформление как хочет

  9. art говорит:

    вроде нормально получилось, заодно и облако категорий поправил

  10. Абсурдный Ч0рт говорит:

    о0, риспеект ;)

  11. art говорит:

    спасибо

    а с каких пор уже чорт? (:

  12. Абсурдный Ч0рт говорит:

    :)
    на самом деле всегда на ходу придумываю ники))) начало лишь всегда «Абсурдный…»)) это дабы Яндекс да Гугля ничего не клеили))
    яж абсурдный, фигли)
    на самом деле имел в виду «Абсурдный, чорт *подери*» :Ы)) с русским не лады у меня :)

  13. art говорит:

    ясно, но лучше, чтобы в течение месяца ник был один (:

  14. Абсурдный Ч0рт говорит:

    Если ты про облако комментаторов – то это не самоцель :Ы)

  15. Voeslav говорит:

    О, так совсем другое дело. Выглядит супер. Полезная вещь.

  16. brainsolid говорит:

    Скажите, а насколько трудно к этому плагину приделать поддержку виджета? А то код вставлять в сайдбар каждый раз как хочется поменять местоположение – трудновато)

  17. art говорит:

    brainsolid, как я понимаю, WP тема должна поддерживать виджеты с php-кодом, пример которого был приведен в посте. более подробно ничего не знаю об этом, так как почти не пользуюсь виджетами.

  18. brainsolid говорит:

    В том-то и дело, что изначально WordPress не поддерживает php в текстовом виджете. На странице оригинального Show Top Commentators нашел ссылку на плагин ExecPHP, который позволяет использовать php. Для меня никаких проблем, но судя по тому, что некоторые не знаю английского, советую вам написать об этом дополнительном плагине в описании своего)

  19. art говорит:

    хорошо

  20. blogomober говорит:

    А как сделать кол-во не за месяц, а к примеру 5-10 самых активных?

  21. art говорит:

    насколько я понимаю надо в начале скрипта есть
    $ns_options = array(
    «reset» => «monthly»

    нужно написать
    $ns_options = array(
    «reset» => «all»

    затем тамже идет «limit» => 5 — можно поставить нужное число

    и придется подправить и саму функцию ns_show_top_commentators, потому что я оттуда limit вобще снес, так как решил показывать всех комментаторов
    к строке ORDER BY comment_author ASC нужно дописать limit $ns_options[limit]

    сам не проверял, но должно все сработать (:

  22. blogomober говорит:

    если дописать к этой строке limit $ns_options[limit], то выводились юзеры у котороых комменты меньше 5. Заменил ORDER BY comment_author ASC на ORDER BY comment_comments DESC LIMIT $ns_options[limit]

  23. art говорит:

    а, да, забыл про сортировку

  24. brainsolid говорит:

    такой момент, может вы мне его объясните
    установил плагин, все отлично работало.
    Деактивировал плагин (нужно было), затем опять активировал. Теперь показываются только те комментаторы, которые оставили комментарии после последней активации – старые же (а они были буквально вчера) в облаке не отражаются. Что с этим можно сделать?

  25. art говорит:

    ого. почему то я только сегодня замутил последний вопрос |:
    но я что-то не знаю об этом

  26. Благодарю за инфу, почитала с интересом

  27. Павел говорит:

    Хорошее оригинальное решение

  28. Flector говорит:

    список или облако – смысла то в этом никакого нет. только ссылка для спамеров, да и только.

  29. art говорит:

    Flector, у меня спам не проходит

  30. AxioS говорит:

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

  31. Alexpts говорит:

    А как сделать rel=»nofollow» для ссылок, которые выводятся плагином?

  32. art говорит:

    можно залезть в код

  33. Alexpts говорит:

    Я в php ничемго не понимаю. Можете помочь или сказать какой именно кусок кода плагина меня интересует (выводит ссылку)