Подскажите как прикрутить свой пингатор к Zebrum Lite. Делаю новую партию сайтов, хочу попробовать Zebrum Lite, уникальные шаблоны созданы, но отсутствие пингатора сильно мешает. Поэтому пока юзаю wordpress, нет проблем с воровством контента.
0
Как прикрутить свой пингатор к Zebrum Lite?
Автор
akram
, 25.11.2009, 01:04
Сообщений в теме: 3
#1
Отправлено 25.11.2009, 01:04
#2
Отправлено 25.11.2009, 13:51
Так как этого функционала нет в Zebrum Lite и возможность его реализации еще не обсуждалась, то могу только подсказать какие вопросы при реализации нужно решить и как их можно решить.
Если сам скрипт отправки пинга есть в наличии, то остается только решить в какой момент его отправлять.
1. В момент наступления события публикации отложенной публикации.
Можно привязаться к событию zrepository.publishPage (например, создав свой плагин вместе с кодом "пингатора") и вызывать пинг при наступлении этого события. Событие вызывается только один раз для каждой добавляемой страницы, так как в момент обновления репозитория происходит его блокировка от других процессов. В этот момент известно какая страница публикуется и у нее можно получить адрес.
"+" - пинг отправляется только один раз на одну новую страницу
"-" - если запрос на пинг приведет к фатальной ошибке, то репозиторий останется заблокированным. В этом случае лучше записывать в какой-либо файл информацию о необходимости выполнить пинг
2. Самим отслеживать необходимость отправлять запрос на пинг.
Если самим хранить в файле время последнего отправленного пинга, то:
Можно использовать класс ztaxonomy_time (zengine::repository()->getTaxonomy('time')->fetch(1, 0)) для получения времени публикации последней записи и сравнивая со временем последнего пинга определять, нужно ли отправлять запрос.
В этом случае лучше создать отдельный скрипт и запускать его по крону. Это гарантирует запуск только одного процесса на отправку пинга. При использовании же плагина потребуется самому решать вопрос с параллельными запросами.
Если сам скрипт отправки пинга есть в наличии, то остается только решить в какой момент его отправлять.
1. В момент наступления события публикации отложенной публикации.
Можно привязаться к событию zrepository.publishPage (например, создав свой плагин вместе с кодом "пингатора") и вызывать пинг при наступлении этого события. Событие вызывается только один раз для каждой добавляемой страницы, так как в момент обновления репозитория происходит его блокировка от других процессов. В этот момент известно какая страница публикуется и у нее можно получить адрес.
"+" - пинг отправляется только один раз на одну новую страницу
"-" - если запрос на пинг приведет к фатальной ошибке, то репозиторий останется заблокированным. В этом случае лучше записывать в какой-либо файл информацию о необходимости выполнить пинг
2. Самим отслеживать необходимость отправлять запрос на пинг.
Если самим хранить в файле время последнего отправленного пинга, то:
Можно использовать класс ztaxonomy_time (zengine::repository()->getTaxonomy('time')->fetch(1, 0)) для получения времени публикации последней записи и сравнивая со временем последнего пинга определять, нужно ли отправлять запрос.
В этом случае лучше создать отдельный скрипт и запускать его по крону. Это гарантирует запуск только одного процесса на отправку пинга. При использовании же плагина потребуется самому решать вопрос с параллельными запросами.
#3
Отправлено 27.11.2009, 03:35
где то видал я пинг скрипт в паблике ... как найду - скину сюда
в принципе наверное можно и из WP его вытащить ...
в принципе наверное можно и из WP его вытащить ...
#4
Отправлено 03.06.2010, 17:29
ничего с пингатором не решили? можно как-то пинговать?
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 скрытых пользователей