Files
turbo-rss/readme.md

4.2 KiB
Raw Blame History

WIP

turbo-rss

Maintainability Test Coverage Build Status npm license

Генератор RSS разметки для сервиса Турбо-страницы

ПРЕДУПРЕЖДЕНИЕ! Работа в процессе

Использование

Создание канала

var TR = require('turbo-rss');

var feed = new TR(feedOptions);
Опции канала
  • title string Название RSS-канала.
  • description optional string Описание канала одним предложением. Не используйте HTML-разметку..
  • author optional string If included it is the name of the item's creator. (Будет удалено)
  • link url string Домен сайта, данные которого транслируются..
  • pubDate optional Date object or date string The publication date for content in the feed (Будет удалено)

Будет добавлено в новых версиях turbo:analytics, turbo:adNetwork

Добавление страницы в канал

feed.item(itemOptions);
itemOptions
  • title string Заголовок страницы.
  • image_url url string Адрес изображения, которое используется в качестве обложки. Изображение может быть в любом формате.
  • url url string URL страницы сайта, для которой нужно сформировать Турбо-страницу.
  • author optional string Автор статьи, размещенной на странице.
  • date string Время публикации контента на сайте источника.
  • content string Содержимое страницы
  • related optional array Аффилированные ссылки yandex:related в конце статьи.
  • relatedfinity optional bool Непрерывная лента статей

Будет добавлено в новых версиях turbo:source, turbo:topic, menu, pubDate как алиас date

related должен содержать массив объектов со следующими опциями:

  • link string ссылка на статью'
  • image_url string ссылка на изображение к статье
  • text string текст ссылки
Получение XML
var xml = feed.xml();

Вернёт XML как строку.

Пример использования

var TR = require('turbo-rss');

/* lets create feed */
var feed = new TR({
    title: 'title',
    description: 'description',
    link: 'http://example.com',
});

/* loop over data and add to feed */
feed.item({
    title:  'item title',
    image_url: 'http://example.com/example.png',
    url: 'http://example.com/article4?this&that',
    author: 'LightAir',
    date: 'May 27, 2012',
    content: '<p>hello</p>',
    related: [{
      link: 'http://example.com/related/post1',
      image_url: 'http://example.com/i/img1.jpg',
      text: 'related link text 1'
    }, {
      link: 'http://example.com/related/post2',
      image_url: 'http://example.com/i/img2.jpg',
      text: 'related link text 2'
    }]
});

// cache the xml to send to clients
var xml = feed.xml();

Тестирование

Для запуска тестов выполните npm test. На текущий момен покрытие тестами не 100%

$ npm test