WordPress трюк: определяем подписавшихся на комментарии

Уже давненько я с интересом посматривал на появляющуюся на некоторых блогах около имен комментаторов иконку в виде письма со стрелкой, альтернативный текст которой гласит: «Subscribed to comments via email«. Это означает, что данный комментатор подписался на получение уведомлений на свою электронную почту о появлении новых комментариев к текущему посту.

Методом поиска я быстро выяснил, что такая фишка «припаяна» к плагину Brian’s Threaded Comments. Но, как оказалась, чтобы сделать подобную вещь, вовсе не обязательно наличие данного плагина, т.к. функция принадлежит плагину Subscribe To Comments, с помощью которого, собственно, комментаторы и подписываются. Соответственно, чтобы у вас сие действо работало, необходимо, чтобы этот плагин был установлен.

Штука довольно интересная, и в ней я вижу пару полезностей:

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

А реализуется такая вещь очень просто. Необходимо в файл comments.php в том месте, где написан код для содержимого комментария (например, рядом с именем комментатора), добавить следующий код:

<?php
	if (function_exists('comment_subscription_status')) {
		if (comment_subscription_status()) {
			echo 'картинка или текст, говорящие о подписке';
		}
	}
?>

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

Берите на заметку ;)

* * *

Компания «Agima«, входящая в TOP100 ведущих веб-студий России, предлагает создание корпоративного сайта, которое увеличит сферу узнаваемости фирмы и, как следствие, количество клиентов и прибыль.

Комментарии (49)
  1. 1

    СЕО, посмотрите в самый верх сайдбара, блок подписки.

  2. 2
    insight
    @

    вот конкретно этот код у меня не работает…
    if (comment_subscription_status())
    здесь точно ничего не нужно менять?

  3. 3

    Ничего не нужно менять. Должно работать, если установлен плагин подписки. У меня же работает…

  4. 4

    Тоже ниче не менял, все работает.

  5. 5
    insight
    @

    мда :) извините, я просто не удосужился посмотреть на ДЕЙСТВИТЕЛЬНО подписанных пользователей )

  6. 6
    @

    Во! слушай, а не встерчал такую фичу как высылка лишь ответа на коммент.

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

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

  7. 7
    Виктор

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

  8. 8
    @

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

  9. 9
    Олег

    Сделал как написано, все заработало :) Теперь не надо при цитировании коммента каждый раз «ходить» смотреть подписан ли цитируемый автор на комменты. Удобно и время экономит :)

  10. 10
    slon

    Ура!Ура! У меня тоже заработало! :-) Целых 3 часа провозился…

  11. 11
    Павел
    @

    Что касаемо полезности, поддержу только только в том что «знать кому отвечать на комментарий», и удивлён почему на данном блоге эта фитча не стоит?

  12. 12
    Аlex
    @

    Dimox,приветствую.
    Подскажи плз причины не работоспособности Subscribed to comments,код в comments.php подправил типа — безрезультатно. люди подписываясь на коменты и нифига не получают.
    Благодарю.

  13. 13

    Аlex, проблема может быть в том, что IP-адрес сервера, с которого отправляются письма, находится в каких-либо черных списках, поэтому почтовые сервисы их фильтруют, как спам.

  14. 14
    Аlex
    @

    Спасибо за оперативность.
    Разобрался уже — причиной была собственная невнимательность.

  15. 15
    @

    Поставил у себя на блоге.. Спасибо!

  16. 16

    Вот это то, что я искал. Внедрил у себя :)

  17. 17

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

    <?php wp_list_comments(array('type'=>comment,'callback'=>mytheme_comment,'avatar_size'=>50, 'reply_text'=>'Reply')); ?>

    безрезультатно, увы… :((
    Простите, что я с вопросом… но нет ли у Вас каких-нить по этому поводу советов?

  18. 20
    SlvX
    @

    Автор, поделись своим плагином комментариев или подскажи куда рыть, что бы такой себе поставить.. Пожалуйста!
    спасибо…

    • 21

      Что конкретно интересует?

      • 22
        SlvX
        @

        Что конкретно интересует?

        Если быть честным — то вся система комментариев в твоем блоге.
        в частности:
        1. код файла стилей твоей темы
        2. код файла comments.php ( код loop вывода комментариев)

        P.S. Просто у меня тема старая и я не могу привинтить встроенную уже поддержку древовидных комментариев, вернее уже прикурутил, только вот с дизайном не могу осилить до конца форму html вывода комментариев.. Стал на ровном месте, не знаю куда ползти.. Лезть в шаблон общих комментариев и править функцию php wp_list_comments().
        Запарился я.. Обрыл весь инет, даже гугл уже устал. Ни где нет нормального описания, как прикрутить шаблон старой темы к WP 2.8

  19. 25
    @

    А для тех блогов, у которых стоит Disqus этот скрипт не подойдет?