Исправлены ошибки в бесплатном пингаторе
Присказка
После просмотра скринкаста о трастовом пингаторе я начал следить за этой темой. Особенно меня заинтриговал следующий комментарий:Все ругаются на цену, однако никто не задумывался, что стоило его создать и отладить. Переписки с саппортами поисковых систем всем знакомы? Так вот, чтобы отладить его работу понадобилось чуть ли не пол года и цена в 40$ — просто смех! Закажите такой пингатор на фрилансе и получите ценник в 6 раз больше + нерабочий скрипт, т.к. никто не будет тратить своё время на переписку и устранение багов с саппортом ПС.
В моем понимании пинг это простой GET или POST запрос и мне стало интересно посмотреть, что там такого наворотил Яндекс, что понадобилось полгода для отладки плагина.
Сказка
Сначала почитал соответствующую документацию от Google Blog Search и Яндекс Блоги — на первый взгляд все просто.Потом скачал плагин пингатор для оправки сообщений Яндексу и Google.
После дебага выяснил, что пинг к Яндексу не идет в принципе.
Список моих изменений:
- Поправил отправку пинга по протоколу Weblogs.Ping (через XML-RPC)
- Исправил ошибки при создании новой статьи
- Исправил ошибку совместимости с NiceUrl (точнее они сами пропали после всех фиксов)
- Пока убрал использование PCNTL т.к. для отправки нескольких параллельных запросов достаточно использовать curl_multi_exec
- Пинг Google Blog Search поменял с REST на XML-RPC
- Порефакторил код и привел наименования переменных с стандартам LiveStreet (венгерская нотация)
Проверил работоспособность плагина на Кукораме. Пинги к сервисам идут и ответы приходят положительные. Рецепт "Тайский салат" появился в выдаче поиска по блогам Яндекса примерно через 10ть минут после редактирования рецепта. В Google Blog Search пока тишина, но я только сегодня скормил ему rss ленту Кукорамы — думаю нужно подождать.
Где скачать?
Рабочую версию плагина я залил на рапидшару.Трастовый пингатор
Теперь, что касается плагина "Трастовый пингатор". В этом плагине реализовано больше функционала чем в бесплатном пингаторе. Это:- Стандартизация под Рейтинг блог сервисов Яндекcа
- Отображение в поисках по блогам в Яндексе Google
- FOAF
UPD. У кого есть информация о том, что нужно для отображения сайта в рейтинге блогосервисов Яндекса?
UPD2. Я помню о баннероиде. Там вылезло несколько багов и я опубликую плагин после того как они будут исправлены. Если плагин очень нужен, то могу скинуть его на мыло (с вас багрепорты) — пишите в личку.
62 комментария
Каждый для себя сможет подобрать — либо более функциональный платный плагин (который наверное поддерживается автором) или на свое усмотрение начнет с бесплатного без всякой поддержки.
Fatal error: Class 'ModuleModuleBlog' not found in .../public_html/engine/classes/Engine.class.php on line 164
По поводу rss — где то у меня записи были, только не смейтесь, в тетрадке. Как всё вспомню или найду напишу.
Пингатор есть! ) Спасибо за отладку!!!
100 активных блогов — слышал что это не обязательно(но по словам поддержки Яндекса нужно)
Здесь всё рассказывается.
Как Я понял лучше сделать для яндекса отдельный rss канал, или совместить его с пользовательским что наверное неудобно для пользователей.
Тоесть нужны каналы:
1. канал с записями блога, с указанием ссылки на канал с комментариями блога и ссылки на профиль автора.
2. канал с комментариями блога, так же с ссылкой на статью и на автора комментария.
3. профиль в формате FOAF — тут немного не пойму(можно указать всё в html или что то вроде rss нужно?).
А так смысл один и тот же.
Пока продолжаю копать. Как найду расскажу.
Как сделать страничку пользователя в foaf стандарте, и ссылку на ней не нашёл.
Жаль что там не всё, что хотел смог реализовать, но там как раз и учитывается foaf, для определения блогеров.
Кто-нибудь знает как правильно это сделать и главное как сделать страничку пользователя в foaf стандарте.
Кто нибудь тестировал его с niceurl..?
Notice: name lookup timed out in .../public_html/plugins/empblogping/classes/modules/empping/Empping.class.php on line 37
Warning: Cannot modify header information — headers already sent by (output started at .../public_html/plugins/empblogping/classes/modules/empping/Empping.class.php:37) in .../public_html/engine/include/function.php on line 215
Warning: Cannot modify header information — headers already sent by (output started at .../public_html/plugins/empblogping/classes/modules/empping/Empping.class.php:37) in .../public_html/engine/include/function.php on line 216
или добавить в код плагина вывод ответов для отладки
Ответ при пинге приходит такой.
Суде по ответу всё норм. Но последнее время Яндекс бот реже стал заходить. В первые дни после установки в течении получаса появлялся, теперь дольше жду.
Появляется довольно стабильно, т.е. выбираю свежий топик — нажимаю редактировать-опубликовать, все хорошо. Тут же, без задержки — редактировать-опубликовать — появилась и т.д.
Нажимаешь кнопку «обновить» — страница загружается без проблем.
Поставил php-curl, но не помогло. Debian Squeeze, nginx 1.1.1, php 5.3.8, LS 0.4.2
Notice: Use of undefined constant CURLOPT_URL — assumed 'CURLOPT_URL' in /users/almanacss/www/plugins/empblogping/classes/modules/empping/Empping.class.php on line 27
Notice: Use of undefined constant CURLOPT_RETURNTRANSFER — assumed 'CURLOPT_RETURNTRANSFER' in /users/almanacss/www/plugins/empblogping/classes/modules/empping/Empping.class.php on line 28
Notice: Use of undefined constant CURLOPT_TIMEOUT — assumed 'CURLOPT_TIMEOUT' in /users/almanacss/www/plugins/empblogping/classes/modules/empping/Empping.class.php on line 29
Notice: Use of undefined constant CURLOPT_POSTFIELDS — assumed 'CURLOPT_POSTFIELDS' in /users/almanacss/www/plugins/empblogping/classes/modules/empping/Empping.class.php on line 30
Fatal error: Call to undefined function curl_init() in /users/almanacss/www/plugins/empblogping/classes/modules/empping/Empping.class.php on line 33
Версия пингатора: v.1.0.2
список серверов я предоставлю.
blogsearch.google.com/ping/RPC2
blogsearch.google.ru/ping/RPC2
rpc.pingomatic.com/
ping.feedburner.com
ping.blogs.yandex.ru/RPC2
rpc.technorati.com/rpc/ping
api.my.yahoo.com/rss/ping
api.my.yahoo.com/RPC2
audiorpc.weblogs.com/RPC2
blog.goo.ne.jp/XMLRPC
blogpeople.net/servlet/weblogUpdates
hamo-search.com/ping.php
blog.youdao.com/ping/RPC2
ping.kutsulog.net/
ping.myblog.jp
ping.fc2.com
ping.namaan.net/rpc
ping.syndic8.com/xmlrpc.php
ping.weblogalot.com/rpc.php
rpc.blogrolling.com/pinger/
rpc.icerocket.com:10080
rpc.reader.livedoor.com/ping
rpc.twingly.com
www.blogpeople.net/servlet/weblogUpdates
www.syndic8.com/xmlrpc.php
rpc.weblogs.com/RPC2
www.blogdigger.com/RPC2
www.wasalive.com/ping/
xianguo.com/xmlrpc/ping.php
xping.pubsub.com/ping
xping.pubsub.com/ping/
wasalive.com/ping/
rpc.weblogs.com/RPC2
rpc.icerocket.com:10080/
pinger.blogflux.com/rpc
ping.weblogalot.com/rpc.php
ping.syndic8.com/xmlrpc.php
ping.feedburner.com
blogpeople.net/servlet/weblogUpdates
api.moreover.com/RPC2
www.xianguo.com/xmlrpc/ping.php
www.feedsky.com/api/RPC2
www.blogpeople.net/servlet/weblogUpdates
rpc.reader.livedoor.com/ping
ping.namaan.net/rpc
ping.kutsulog.net
ping.fc2.com
ping.blogoon.net
rpc.pingomatic.com
ping.weblogs.se/
blogmatcher.com/u.php
coreblog.org/ping/
bulkfeeds.net/rpc
ping.myblog.jp
ping.bitacoras.com
ping.bloggers.jp/rpc/
ping.blogmura.jp/rpc/
— это список для wordpress движка.
я так понимаю там все это через XML сделано.
давайте рассмотрим, какие стоит добавить.
думаю:
rpc.pingomatic.com
ping.feedburner.com
rpc.technorati.com/rpc/ping
api.my.yahoo.com/RPC2
ping.blogoon.net
я не вижу тут реальных источников траффика для моего ресурса. можете добавить поддержку нужных вам источников и сделать pull request
запись в блоге отправляет пинг на все эти сервисы. паук поисковика сканя их, переходит на данный блог
если пузомерки у сайта еще небольшие, то паук поисковика будет заходить редко.
Итак, появилась новая запись.Нам надо рассказать о ней наибольшему числу других сайтов.
Мы отправляем им пинг. типа «Ау!!!». ок. услышали.
Вероятность того, что на эти сайты зайдет поисковик достаточно большая. и чем больше сайтов, тем больше вероятность, что поисковик заметит ссылку о нашей записи и перейдет к нам в «гости». :)
profit!
для меня профит не с поисковиков, а с людей, которые с них пришли. поэтому мне пока достаточно уведомлений для гугля и яндекса. остальные поисковики из этого списка практически не используются на постсоветском пространстве и я не вижу в их заходах ценности для своего сайта.
как добавить новый сервис?
я так понимаю надо добавить аналогичные записи в config.php,empping.class.php и еще куда то, где прописывается url.
что сие значит?