Главная » Drupal » Статьи Drupal » Возможности FeedAPI 1.0
Распечатать статью

Возможности FeedAPI 1.0

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

Мы хотели сделать FeedAPI максимально гибким и быстродействующим, и я счастлив сообщить, что результат превзошёл наши ожидания. Все ленты являются документами. Пункты ленты остаются независимыми от системы документов — вы можете сами выбрать как их хранить, как обычные документы Друпала или как простые записи в базе данных. Стандартно, FeedAPI использует в качестве парсера лент SimplePie, который превосходно работает в большинстве случаев. Но если вам нужен парсер со специфическими требованиями, то вы можете переключиться на альтернативный парасер Common Syndication или написать свой.

Особенностью FeedAPI является и то, что вы можете настроить обработку лент на основе типов документов. Получение нового содержания зависит от cron. FeedAPI дополнительно собирает важную статистическую информацию, которая позволяет контролировать нагрузку на сайтах, которые собирают очень много лент. Модуль легко настроить нужным образом, а также легко расширить используя его АПИ.

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

А теперь, я хочу сказать несколько слов о том, что вы можете сделать с помощью FeedAPI 1.0:

  • Модуль может работать с ПХП версий 4 или 5, а также СУБД MySQL или PostgreSQL
  • Кешировать скачиваемые ленты, чтобы уменьшить трафик и сократить время их открытия
  • Сохранять содержание пунктов ленты в документах
  • Сохранять содержание пунктов ленты в простых записях базы данных — как это делает стандартный Aggregator
  • Настроить получение новых данных при запусках cron
  • Собирать статистику по обработке получаемых лент
  • Используя Feed Element Mapper, преобразовывать элементы пунктов лент в поля CCK или таксономии
  • Импортировать ленты в формате ОПМЛ
  • Экспортировать ленты в формате ОПМЛ
  • Наследовать параметры таксономии или рабочих групп, от лент к пунктам лент
  • Использовать для просмотра полученных данных виды, включая виды, которые распространяются вместе с модулем
  • Использовать шаблоны для работы с типами документов
  • Настроить вывод пунктов на первую страницу сайта
  • Создавать блоки для лент в один клик мышкой, просто указав УРЛ ленты
  • Очищать или не очищать базу данных от старых данных — на ваш выбор
  • Использовать автоматическое тестирование для поиска возможных ошибок
  • Автоматически определять УРЛ ленты, просто указав УРЛ нужной страницы
  • Познакомиться с документированным АПИ и создавать свои парсеры и процессоры
  • Перевести интерфейс модуля на нужный вам язык
  • Получить быстрый отклик на своё сообщение, если вы захотите оставить его в ленте сообщений модуля :-)

Я начал работу над FeedAPI прошлым летом, в рамках Google Summer of Code 2007. Могу сказать, что эта работа была для меня удовольствием и мне нравилось смотреть как проект развивался и видеть насколько далеко он может зайти. Во время Google Summer of Code, многие люди помогали обдумывать его структуру и давали отличные советы. Первоначально, структура была задумана следующей: получение ленты → парсер → ядро модуля → процессор. Мы также хотели реализовать возможность, при которой необходимо указать только УРЛ, а модуль самостоятельно определит тип ленты (RSS, iCal или что-то ещё), а также, чтобы ни одна часть не зависела от системы документов Друпала. В конце, некоторые из наших идей оказались слишком идеалистичными, поэтому сталкиваясь с проблемами быстродействия и препятствиями с уровнями абстракции, мы немного изменяли направление разработки. Когда модуль находился в бета-версии, я получил несколько готовых к применению патчей и множество хорошо задокументированных сообщений об ошибках, которые оказались очень полезными.

Я хочу сказать огромное спасибо всем, кто помогал сделать FeedAPI лучше. Эти слова не просто «давай, скажи что-нибудь в конце этой заметки». Каждый, кто помогал в процессе разработки модуля, действительно сделал FeedAPI лучше.

В примечании к версии я написал о том, что теперь мы ищем переводчиков. Так что, если ваш родной язык не английский, то вы можете начать переводить прямо сегодня. Хорошо, возможно я дам хороший пример и скоро сам переведу его на венгерский язык :-)

Источник: content-management-systems.info

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

Оставить комментарий

Похожие статьи