Добавлена опция relatedfinity для формирования непрерывной ленты статей

This commit is contained in:
la
2018-05-30 14:53:25 +03:00
parent 4b0f033aa9
commit c65b6ccc12
5 changed files with 66 additions and 19 deletions

View File

@@ -17,22 +17,27 @@ function ifTruePush(condition, array, data) {
/**
* @param related
* @param itemValues
* @param relatedfinity
*/
function addRelated(related, itemValues) {
ifTruePush(related, itemValues, {
'yandex:related': related.map(
function (rel) {
return {
link: [{
_attr: {
'url': rel.link,
'img': rel.image_url
}
}, rel.text]
};
}
)
function addRelated(related, itemValues, relatedfinity) {
let relatedResult = related.map(function (rel) {
return {
link: [{
_attr: {
'url': rel.link,
'img': rel.image_url
}
}, rel.text]
};
});
if (relatedfinity) {
relatedResult.push({
_attr: {'type': 'infinity'}
});
}
ifTruePush(related, itemValues, {'yandex:related': relatedResult});
}
/**
@@ -66,7 +71,7 @@ function items(items, channel) {
item_values.push({'turbo:content': {_cdata: fullContent}});
if (typeof item.related !== 'undefined') {
addRelated(item.related, item_values);
addRelated(item.related, item_values, item.relatedfinity);
}
channel.push({item: item_values});
@@ -128,7 +133,8 @@ function YTurbo(options, items) {
date: data.date || data.pubDate,
content: data.content,
menu: data.menu,
related: data.related
related: data.related,
relatedfinity: data.relatedfinity || false,
};
this.items.push(item);