https://github.com/asfdfdfd/bitrix.rss2iblock
Агент 1С-Битрикс для импорта из RSS в инфоблок на основе SimplePie
https://github.com/asfdfdfd/bitrix.rss2iblock
Last synced: 9 months ago
JSON representation
Агент 1С-Битрикс для импорта из RSS в инфоблок на основе SimplePie
- Host: GitHub
- URL: https://github.com/asfdfdfd/bitrix.rss2iblock
- Owner: asfdfdfd
- Created: 2011-06-30T11:23:50.000Z (almost 15 years ago)
- Default Branch: master
- Last Pushed: 2011-06-30T12:27:38.000Z (almost 15 years ago)
- Last Synced: 2025-03-12T15:15:24.657Z (about 1 year ago)
- Homepage:
- Size: 758 KB
- Stars: 5
- Watchers: 2
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
RSS2IBlock
==========
Этот агент считывает сообщения из RSS канала и записывает в инфоблок. Можно указать как несколько каналов, так и разные инфоблоки.
В 1С-Битрикс присутствует компонент, который считывает несколько записей из RSS канала и сразу их выводит. Помимо того факта что этот компонент не работает с некоторыми каналами и не поддерживает несколько фидов, такой подход в принципе неудобен. Обычно в проекте уже присутствуют готовые шаблоны для вывода новостей и воспользоваться ими для вывода RSS ленты кажется наиболее логичной идеей.
Установка
---------
1. Поместите содержимое папки src в bitrix/php_interface/include/rss/
2. Создайте инфоблок со следующими свойствами типа строка: GUID, FEED_URL, PERMALINK. Первые два — обязательные.
Использование
-------------
function updateRSS()
{
require_once($_SERVER["DOCUMENT_ROOT"].'/bitrix/php_interface/include/rss/RssToIBlock.php');
$rssToIBlock = new RssToIBlock(array('video.avs50.ru'), RSS_IBLOCK_ID);
$rssToIBlock->fetch();
return "updateRSS();";
}
Конструктор RssToIBlock принимает два параметра:
1. Массив url адресов фидов или страниц содержащих ссылки на фиды;
2. ID инфоблока в который будут записаны сообщения из RSS.
Заметки
-------
1. В том случае если RSS не импортируется, то, возможно, проблема в том, что SimplePie конфликтует с некоторыми сайтами. В частности: Blogspot, FeedBurner и Twitter. Методы противодействия и список сайтов смотрите [здесь](http://simplepie.org/wiki/faq/problematic_feeds);
2. Функция для импорта сообщений недостаточно оптимизирована, поэтому не рекомендуется запускать её часто. Впрочем, возможно, оптимизация здесь и не нужна, так как основное время занимает обращение к RSS фидам, а не их обработка;
3. Так как SimplePie использует spl_autoload_register, а Bitrix __autoload, то был написан класс (файл BitrixAutoload.php), который включает автоматическую загрузку через spl_autoload_register для Bitrix.