Комментарии на AJAX для WordPress

12 июля 2011
3 013

Комментарии в WordPressЕсли вы обратили внимание, ранее на моём блоге при добавлении комментария страница перезагружалась, теперь комментарий или ответ на другой комментарий появляются сразу. Это благодаря технологии AJAX (асинхронный JavaScript и XML), позволяющей браузеру и веб-серверу обмениваться данными в фоновом режиме. Многие шаблоны для WordPress делаются уже с модифицированными комментариями, но если единственный недостаток вашего шаблона, как и у меня, необходимость ожидания перезагрузки страницы при комментировании, читайте дальше - добавить поддержку AJAX, оказывается, легко с помощью плагинов.

Доброе время суток, дорогой читатель! Последние дни (и ночи) я потратил на доработку комментариев на своём блоге: добавил AJAX, модифицировал форму комментариев WordPress, внешний вид комментариев, перепробовал кучу плагинов и покопался в файлах PHP и CSS. Теперь постараюсь поведать в паре статей о самых важных результатах изысканий.

If AJAX Comments

Самый распространённый плагин для решения поставленной задачи. И неудивительно: среди десятка протестированных мною плагинов этот самый функциональный и стабильный.

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

Однако, мне больше понравился плагин PTM AJAX Comments. Юмор в том, что он - полная копия If AJAX Comments, лишь слегка отличается в оформлении - этим и понравился. Сообщение об ошибке выводит буквами красного цвета, а об успешном добавлении комментария - зелёным. В принципе это легко сделать и в предыдущем плагине, если покопаться в его файлах - у меня желания не возникло.

Настройки PTM AJAX Comments

Если же вы предпочитаете внести изменения в файлы плагина, то это можно сделать из панели администратора WordPress. Находите в боковой панели слева раздел "Плагины", в нём пункт "Редакток", кликаете по нему. Открывается страница редактирования кода. Над полем, в котором отображается код открытого файла вы должны выбрать плагин, файлы которого хотите отредактировать. Не забудьте нажать кнопку "Выбрать" после совершения выбора. По умолчанию открылся первый файл плагина, но их обычно несколько - список отображается справа от поля редактирования кода. Удачи;)

Ajax Comments-Reply

Предыдущие два плагина я называю стабильными по совокупности отзывов. К сожалению, работа AJAX сильно зависит от шаблона и у многих не работает, как должно. В общем, у меня эти плагины работали не до конца, и я отправился в репозиторий WordPress искать плагин для себя. Нашёл почти никому не известный, но заработавший сразу и без всяких условностей, плагин Ajax Comments-Reply.

Но у него своя проблема. Он меняет внешний вид комментариев до неузнаваемости. Неудачное расположение элементов плюс ужасные шрифты и отсутствие перевода надписей на русский язык делают этот плагин бесполезным, если вы не готовы вручную отредактировать файлы плагина. Стили прописаны в comment.css, расположение элементов и выводимые надписи в comments.php. Дерзайте.

Послесловие

Случай свёл меня с плагином WordPress Thread Comment. Его основная задача - добавлять древовидные комментарии, что с версии 2.7 может и сам WordPress. Поэтому я и не обращал внимания на этот плагин, однако, оказалось он может много больше - например, добавить поддержку AJAX. Причём, всё работает. Именно на этом плагине я остановился для своего блога, читайте о нём в статье WordPress Thread Comment. Также хочу напомнить, что некоторые функции комментариям WordPress можно добавить и без использования плагинов.

А сейчас должен отметить пару деталей. Некоторые плагины, добавляющие в форму комментирования панель с кнопками для форматирования текста комментариев, нарушают работу AJAX. Придётся остановиться на чём-то одном. Это касается таких замечательных плагинов как MCEComments и NICEdit. О них я тоже расскажу.

И совсем грустная новость, обнаруженная сегодня утром. Добавление комментариев по технологии AJAX не поддерживается браузером Opera. Он беспомощно пытается отправить запрос с перезагрузкой страницы, но ничего не получается. Тестировал на Opera версии 11.50. В Google Chrome последней версии, Internet Explorer версии 9 и Firefox 5 проблем не возникло.

Related Posts Plugin for WordPress, Blogger...
Рубрики: Wordpress плагины

39 комментариев к записи “Комментарии на AJAX для WordPress”

  1. Александр

    Здравствуйте!
    Может дадите ссылочку на PTM AJAX Comments, чтобы скачать. А то я как то не нашел такого плагина - странно...

    [Ответить]

  2. Стасик

    проверка

    [Ответить]

  3. Виктор Горячев (мой Twitter:  Виктор Горячев :))

    Делаю проверочку. Автору спасибо за надежду))

    [Ответить]

    Fucking

    Scalable Vector Graphics (SVG - масштабируемая векторная графика) является семейством спецификаций основанного на XML формата файла для описания двумерной векторной графики.

    [Ответить]

    Fucking

    Нихера се, "без перезагрузки"... вот это аякс...
    О_0

    [Ответить]

  4. Дмитрий Науменко

    Ебать ту Люсю в небесах с алмазами

    [Ответить]

    Fucking

    За что ж так Люсю... =(

    [Ответить]

  5. Денис

    Тестирую для понимания принципа работы

    [Ответить]

  6. Сергий

    Тоже пишу для теста. =)

    [Ответить]

  7. Murad

    тест коментриев

    [Ответить]

  8. Елена (мой Twitter:  Vasyona)

    При отправке комментария выскакивает какая-то табличка. Коммент не выводится.

    [Ответить]

    deSiter (мой Twitter:  deSiter)

    Хмм, у меня вроде всё работает, ваш комментарий вижу. Могу предположить, что иногда комментарий не проходит из-за ограничения по числу обращениям к БД со стороны хостинга. При большом числе посетителей иной раз страницы сайта из-за этого через раз загружаются.

    [Ответить]

  9. Сергей

    Проверка скорости работы комментариев. Если устроит, поставлю к себе на сайт :)

    [Ответить]

  10. Денис

    Тестирую ajax комментарии

    [Ответить]

  11. Денис

    тестирую

    [Ответить]

  12. николай

    тест коментриев

    [Ответить]

  13. Negatiff (мой Twitter:  negat1ff)

    Оставляю коммент дабы посмотреть принцип работы плагина.

    [Ответить]

  14. acrkg

    протестирую-ка я ваши ajax комменты...

    [Ответить]

  15. Александр

    А у меня почему-то при отправке комментария переходит на пустую страницу, на которой только:
    -1

    [Ответить]

    deSiter (мой Twitter:  deSiter)

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

    [Ответить]

  16. Ehi

    Вот я установил PTM AJAX Comments, но у меня на сайте не появляется форма для оставления коментария, подробно объясните что нужно сделать чтоб пользватель оставлял комент у моих статей.

    [Ответить]

  17. Виталий

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

    [Ответить]

    deSiter (мой Twitter:  deSiter)

    Лучшим решением было бы разобраться в AJAX и самому написать плагин:)

    [Ответить]

    Otshelnik-fm

    Your comment was a bit too short. Please go back and try again. у вас выводится в сообщении. исправьте

    [Ответить]

    deSiter (мой Twitter:  deSiter)

    Спасибо. Поправлю.

    [Ответить]

  18. dizigne

    Почему опера не поддерживает AJAX? У меня все ок :)

    [Ответить]

    deSiter (мой Twitter:  deSiter)

    На момент написания статьи, вероятно, были с этим проблемы.

    [Ответить]

  19. Алексей

    Экономия сетевого трафика + меньше запросов - то что надо. Спасибо.

    [Ответить]

    deSiter (мой Twitter:  deSiter)

    Заходите ещё, надеюсь и в дальнейшем радовать полезными статьями)

    [Ответить]

    Швед

    Экономия однозначная

    [Ответить]

  20. SwaEgo (мой Twitter:  swaego)

    AJAX это хорошо.Перегружаемая страница вечно бесит,в любых случаях.Но у меня Дискус,там и так всё нормально.

    [Ответить]

    deSiter (мой Twitter:  deSiter)

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

    [Ответить]

    Мариан

    Что такое Дискус?

    [Ответить]

    deSiter (мой Twitter:  deSiter)

    Система комментирования, которая при установке на сайт полностью подменяет встроенную. Богатая на возможности, но загружается не мгновенно, из-за чего зачастую комментарии на странице видны не сразу после её загрузки. Пишется Disqus - можете поискать в Гугле информацию, а то в рамках комментария особо много не расскажешь.

    [Ответить]

    asd

    ну-ка) ваываыва sdf dsf sdf sdf sdfs dsf sf

    [Ответить]

Комментируйте - автору важно ваше мнение!

Дополнительно: