[CssSelectorBridge] Time/Thumbnail improvements (#3879) (#3901)

* Implement <time> metadata tag as timestamp source
* Add setting to include thumbnail as article header
This commit is contained in:
ORelio 2024-01-19 21:30:53 +01:00 committed by GitHub
parent 12a90e2074
commit bb36eb9eb8
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 42 additions and 5 deletions

View file

@ -37,6 +37,11 @@ class CssSelectorFeedExpanderBridge extends CssSelectorBridge
'title' => 'Some sites set their logo as thumbnail for every article. Use this option to discard it.',
'type' => 'checkbox',
],
'thumbnail_as_header' => [
'name' => '[Optional] Insert thumbnail as article header',
'title' => 'Insert article main image on top of article contents.',
'type' => 'checkbox',
],
'limit' => self::LIMIT
]
];
@ -48,6 +53,7 @@ class CssSelectorFeedExpanderBridge extends CssSelectorBridge
$content_cleanup = $this->getInput('content_cleanup');
$dont_expand_metadata = $this->getInput('dont_expand_metadata');
$discard_thumbnail = $this->getInput('discard_thumbnail');
$thumbnail_as_header = $this->getInput('thumbnail_as_header');
$limit = $this->getInput('limit');
$feedParser = new FeedParser();
@ -100,6 +106,13 @@ class CssSelectorFeedExpanderBridge extends CssSelectorBridge
unset($item_expanded['enclosures']);
}
if ($thumbnail_as_header && isset($item_expanded['enclosures'][0])) {
$item_expanded['content'] = '<p><img src="'
. $item_expanded['enclosures'][0]
. '" /></p>'
. $item_expanded['content'];
}
$this->items[] = $item_expanded;
}
}