Постом ранее была описана проблема: Drupal и XML.
Потратив немного времени в поисках решения задачи импорта XML данных в Drupal остановился на отличном, замечательном классном супер-пупер модуле под названием FeedAPI.
Модуль действительно может решить любые поставленные задачи по импорту XML фидов, да и не только их. В стандартной поставке он уже умеет импортировать наиболее популярные форматы, Atom, RSS различных версий.
Но радует сама реализация модуля. Есть ядро модуля, т.е. API и есть 2 типа обработчиков: парсеры (parser) и процессоры (processor).
Парсеры отвечают за... понятное дело, парсинг данных, не важно, каких и преобразуют их в "нормализованный" XML.
Процессоры отвечают за последующую обработку данных и передачу, публикацию или что угодно в Drupal.
Сейчас уже существует целый набор модулей, которые работают с общепринятыми данными, CSV, iCal, KML (географические XML данные), а так же есть модуль, который может импортировать (scraping) комментарии и также может обрастать парсерами (уже умеет тянуть комментарии из flickr, youtube, vimeo).
Есть готовые процессоры. Во-первых, собственный процессор модуля FeedAPI, который создаёт, обновляет и удаляет ноды. Есть RDF процессор, работающий совместно с модулем RDF, ну и наконец тот же FeedAPI comments, который умеет создавать комментарии.
Ко всему вышесказанному, надо добавить, что существует бонусная бочка мёда в виде модуля Feed Element Mapper, который является мостиком дружбы между FeedAPI и всеми любимого CCK. Модуль позволяет сохранять элементы импортированных данных в нужные CCK поля. Что ещё нужно для счастья? :)
Бля, осталось только написать свой парсер и процессор! :( Счастье не за горами!
четверг, 22 января 2009 г.
вторник, 13 января 2009 г.
Drupal и XML
Уже не в первый раз сталкиваюсь с задачей импорта данных в формате XML. Учитывая тот факт, что я не программист, каждый раз для меня это проблема.
Недавно один из своих старых мёртвых сайтов решил реанимировать и перевёл его на Drupal. Подключил партнёрскую программу, которая кроме всего прочего даёт хороший дополнительный контент в формате XML.
Поискал модули в библиотеке Drupal'а, но похоже готового универсального решения до сих пор нет. Странно это, ведь с задачей вебмастера сталкиваются достаточно часто! Или подобное универсальное решение реализовать в принципе нельзя?
Но ведь сделали такую красоту, как CCK! С нормальным интерфейсом, как раз для таких чайников, как я. Сделали View! И тоже с интерфейсом! Теперь контент может содержать всё, что угодно и выглядеть как угодно! Что же мешает обрабатывать XML, который имеет чёткую структуру, — те же поля?! Создал тип контента, описал соответствие полей Drupal — XML и всё! :)
Жду с нетерпением, когда появится на свет подобное чудо!
Недавно один из своих старых мёртвых сайтов решил реанимировать и перевёл его на Drupal. Подключил партнёрскую программу, которая кроме всего прочего даёт хороший дополнительный контент в формате XML.
Поискал модули в библиотеке Drupal'а, но похоже готового универсального решения до сих пор нет. Странно это, ведь с задачей вебмастера сталкиваются достаточно часто! Или подобное универсальное решение реализовать в принципе нельзя?
Но ведь сделали такую красоту, как CCK! С нормальным интерфейсом, как раз для таких чайников, как я. Сделали View! И тоже с интерфейсом! Теперь контент может содержать всё, что угодно и выглядеть как угодно! Что же мешает обрабатывать XML, который имеет чёткую структуру, — те же поля?! Создал тип контента, описал соответствие полей Drupal — XML и всё! :)
Жду с нетерпением, когда появится на свет подобное чудо!
воскресенье, 24 августа 2008 г.
Модуль FeedBurner
Прикрутил вчера к своему блогу Prodating.ru модуль FeedBurner. На данный момент модуль с состоянии Beta3, работает нормально. При подключении к http://prodating.ru/rss.xml происходит 307 редирект (это настраивается в admin/settings/feedburner) на http://feedproxy.google.com/prodatingru. В настройках можно указать и свой домен, например http://feed.prodating.ru/
Только после установки увидел одну неприятную вещь, прикрученный "зажженый фид" (так они сами это называют по-русски) имеющий в тексте относительные ссылки подставляет http://feedproxy.google.com в качестве домена.
Только после установки увидел одну неприятную вещь, прикрученный "зажженый фид" (так они сами это называют по-русски) имеющий в тексте относительные ссылки подставляет http://feedproxy.google.com в качестве домена.
вторник, 19 августа 2008 г.
Установка модуля без предварительной обкатки и Законы Мерфи
Все модули, которые я ставил после запуска блога prodating.ru, сначала проходили обкатку на локальном сервере под Денвером. После этого я как послушный мальчик делал резервную копию рабочего сайта и далее по инструкции, с переводом в режим технического обслуживания и т.д.
И тут после установки pathauto я решил дополнить его рекомендуемым модулем Global Redirect. При этом предварительно посмотрел содержание модуля. Оказалось, Global Redirect простой и содержит 1 файл размером меньше 4кб, никаких изменений в БД не вносит. Действительно, вся работа грубо говоря сводится к проверке наличия алиаса функцией drupal_get_path_alias и при обнаружении такового делаем drupal_goto с параметром 301.
На деле оказалось не так просто. Подключив модуль без всяких лишних телодвижений с тестированием бекапом и т.п. я тут же получил зацикленный 301 редирект всего, кроме главной страницы.
И так как не было возможности ни отключить модуль, ни даже зайти в админку, в т.ч. используя пути index.php?q=tra-ta-ta (с чем кстати и борется Global Redirect), пришлось быстренько подправлять код. Обошлось без потерь простым return FALSE; в начале функции. Но главное сработал один из Законов Мерфи который по-русски называется "западло". :)
Разбираться что-как-почему не стал, посмотрел issues к модулю, есть Endless loop with translation (D6), судя по последним комментариям как раз подходит под мою проблему. Модуль pathauto ставился со взглядом на ближайшие изменения в структуре блога prodating.ru, но до них пока не дошел. Собственно и пост написан про "западло" :)
добавлено:
После публикации поста грех было не покопаться. Проблема где-то здесь:
И тут после установки pathauto я решил дополнить его рекомендуемым модулем Global Redirect. При этом предварительно посмотрел содержание модуля. Оказалось, Global Redirect простой и содержит 1 файл размером меньше 4кб, никаких изменений в БД не вносит. Действительно, вся работа грубо говоря сводится к проверке наличия алиаса функцией drupal_get_path_alias и при обнаружении такового делаем drupal_goto с параметром 301.
На деле оказалось не так просто. Подключив модуль без всяких лишних телодвижений с тестированием бекапом и т.п. я тут же получил зацикленный 301 редирект всего, кроме главной страницы.
И так как не было возможности ни отключить модуль, ни даже зайти в админку, в т.ч. используя пути index.php?q=tra-ta-ta (с чем кстати и борется Global Redirect), пришлось быстренько подправлять код. Обошлось без потерь простым return FALSE; в начале функции. Но главное сработал один из Законов Мерфи который по-русски называется "западло". :)
Разбираться что-как-почему не стал, посмотрел issues к модулю, есть Endless loop with translation (D6), судя по последним комментариям как раз подходит под мою проблему. Модуль pathauto ставился со взглядом на ближайшие изменения в структуре блога prodating.ru, но до них пока не дошел. Собственно и пост написан про "западло" :)
добавлено:
После публикации поста грех было не покопаться. Проблема где-то здесь:
// Compare the request to the alias. If we have a language prefix then prefix the alias and compare. This also works as a 'deslashing' agent too
if ((empty($language->prefix) ? $alias : $language->prefix .'/'. $alias) != $_REQUEST['q']) {
drupal_goto($alias, $query_string, NULL, 301);
}
Ярлыки:
Drupal
среда, 23 июля 2008 г.
5, 4, 3, 2, 1, Поехали!

Я запустил свой блог на друпале. Это мой первый проект и посвящен он тому, чем я занимаюсь уже достаточно долго — дейтингу или знакомствам в интернет.
Вот сам блог: prodating.ru.
Расскажу вкратце о технической стороне.
Каких-то особых и крутых наворотов нет и похвастаться нечем. :)
Итак, самое главное и важное, ядро — Drupal 6.x. Отсюда и куча проблем связанных с тем, что многие модули, которые хотелось использовать в настоящее время не портированы.
Тема оформления
Так как я новичок и с Друпалом познакомился совсем недавно, перед мной стоял выбор, либо выбрать стандартный дизайн из множества предлагаемых в разделе Themes, либо разобраться и сделать что-то своё. Так как я знаком с библиотекой YUI Grids, я решил найти тему на основе этой библиотеки. И нашел — Advanced Theme Construction Kit (ATCK). Как окозалось YUI библиотеки в ATCK использовались как отправная точка, но главная идея осталась, тема строится на основе сетки.
Поковырявшись с темой, я всё таки понял, что слово Advanced использовано не просто так и моих знаний катастрофически не хватает. Тема мне понравилась, но я пошел по пути наименьшего сопротивления и выбрал для себя замечательную тему Zen — то, что нужно для начинающего. Всё просто и понятно, множество how to, разжевано до мелочей. Порадовали CSS файлы, работать с которыми было одно удовольствие.
В итоге тема блога была создана как подтема Zen. В последствии её можно будет доработать и изменить.
Модули
О стандартных модулях можно не говорить, они здесь изучены вдоль и поперёк и почти все задействованы на моём блоге. Из дополнительных модулей получился «стандартный» набор, который используется большинством друпаллеров. Часть из них включены сейчас, но не используется и предназначены для функциональности, которая только запланирована.
Список модулей:
- Content Construction Kit (CCK)
- Devel
- CAPTCHA
- Views
- BUEditor
- XML Sitemap — строит карту сайта и отдаёт её популярным поисковикам при необходимости
- Google Analytics — для меня модуль явился сюрпризом, который умеет не только вставлять код Google Analytics на определённые страницы, но и отслеживать поведение зарегистрированных пользователей, а так же вставляет js-код для отслеживания внешних ссылок.
- Go - url redirects — очень простой модуль, редиректит URL и отслеживает клики. Удобно для встевки реф-ссылок.
- Service links — для добавления ссылок на сервисы социальных закладок.
Все из используемых модулей, кроме XML Sitemap, имеют как минимум статус релизкандидата. Модули, которые мне были интересны, но в состоянии dev я подключать не стал из соображений безопасности. Среди них жду с нетерпение выхода Global Redirect, после чего можно будет включить Pathauto без особых последствий со стороны ПС.
Главная цель была запустить в работу блог, и уже после этого постепенно подключать модули и добавлять новые фичи. Первый в очереди — модуль Meta tags, который позволит управлять сниппетами ПС (сейчас они ваглядят ужасно)
Ярлыки:
Drupal
среда, 14 мая 2008 г.
Сбой Google Analytics
И на старуху бывает проруха...
Вот такое сообщение сегодня ждало меня в интерфейсе Google Analytics:
В общем произошел какой-то сбой в обработке собранных данных с 30 апреля по 5 мая. Почти все данные будут восстановлены и обработаны повторно и к 14 мая будут отражены в отчетах. Но!!! Но небольшая часть данных особенно относящихся к е-коммерсе транзакциям будет утеряна.System Message: Analytics Processing Delay from April 30th to May 5th
Google Analytics experienced a data processing error from April 30th to May 5th. Almost all of the data has been recovered and is currently being reprocessed. The recovered data will be reflected in your reports within a few days. Please note that a small percentage of data, particularly in the area of e-commerce reporting, was not recoverable from those dates.
We sincerely apologize for this processing issue and are taking every precaution to prevent such disruptions from occurring again in the future. For more information, please read through our common questions.
The Google Analytics Team
Те кто не используют е-коммерсе отчетности могли заметить небольшое проседание трафика за указанный период до момента восстановления данных.
Данные AdWords в результате сбоя не пострадали. :)
Google извиняется и говорит, что постараются сделать всё возможное, чтобы предотвратить подобные сбои в будущем.
Вот так прошел сбой без особых проблем и шума (мне сразу вспомнился сбой почты mail.ru, тогда был шум, а восстановления данный не было).
Конечно Google пришлось сообщить об этом, т.к. многие наверное это заметили. Но я честно сказать ничего не заметил (либо у них сбои довольно часто, т.к. у меня трафик проседает с непонятной периодичностью. :) ).
А вот о сбоях в их поисковой машине похоже нам достоверно узнать не суждено, а они наверняка были. :)
Ярлыки:
google,
Google Analytics
воскресенье, 3 февраля 2008 г.
Urchin 5

Я уже давно пользуюсь Google Analytics. В принципе меня эта система полностью устраивает и устанавливаю счетчик Liveinternet.ru только для пользователей.
Но сейчас не об этом, а о новости от Google. Urchin 5, на основе которой реализован Google Analytics теперь доступен для скачивания на Urchin.com (рередиректит сразу на http://www.google.com/urchin/index.html, но это и понятно). Замечу, что это бесплатная бета-версия с лицензией на 3 месяца и после релиза из халявы превратится в достаточно дорогой продукт стоимостью $2995.
Интерфейс (см. картинку) совпадает со старым интерфейсом Google Analytics.
Поддерживаются следующие платформы:
- FreeBSD 4
- FreeBSD 5.3+
- FreeBSD 6
- Linux with 2.4 or 2.6 kernel
- Windows: Windows 2000, Windows XP, Windows 2003 Server (не совместима с Vista)
В отличие от Google Analytics Urchin имеет ряд преимуществ:
- нет необходимости вставлять в страницы JavaScript-код;
- возможность обработки логов в реальном времени или по расписанию;
- пре- и постобработка данных;
- отслеживание всего трафика, включая загрузку изображений, поисковых роботов и ботов, ответы сервера (например, 404, 500 и т.п.), битые ссылки и т.д.
- настраиваемая (нестандартная) отчетность;
- передача собранных данных для обработки "на стороне".
Ярлыки:
Google Analytics,
Urchin
Подписаться на:
Сообщения (Atom)