diff --git a/lib/index.js b/lib/index.js index e735a37..34967c4 100755 --- a/lib/index.js +++ b/lib/index.js @@ -43,6 +43,22 @@ function generateXML(data) { let fullContent = '
' + img + '

' + item.title + '

' + menu + '
' + item.content; item_values.push({'turbo:content': {_cdata: fullContent}}); + + let relatedLink = function(related) { + return ( + '' + + related.text + + '' + ); + }; + ifTruePush(item.related, item_values, { + 'yandex:related': item.related.map(relatedLink).join('') + }); + channel.push({item: item_values}); }); @@ -80,7 +96,8 @@ function YTurbo(options, items) { author: options.author, date: options.date || options.pubDate, content: options.content, - menu: options.menu + menu: options.menu, + related: options.related }; this.items.push(item); diff --git a/readme.md b/readme.md index 8867786..f74e4c5 100644 --- a/readme.md +++ b/readme.md @@ -44,7 +44,8 @@ feed.item(itemOptions); * `author` _optional_ **string** Автор статьи, размещенной на странице. * `date` **string** Время публикации контента на сайте источника. * `content` **string** Содержимое страницы - + * `related` _optional_ **object** Содержимое страницы + *Будет добавлено в новых версиях turbo:source, turbo:topic, yandex:related, menu, pubDate как алиас date* ##### Получение XML @@ -73,7 +74,16 @@ feed.item({ url: 'http://example.com/article4?this&that', author: 'LightAir', date: 'May 27, 2012', - content: '

hello

' + content: '

hello

', + 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