public function FeedsSyndicationParser::parse in Feeds 7.2
Same name and namespace in other branches
- 6 plugins/FeedsSyndicationParser.inc \FeedsSyndicationParser::parse()
- 7 plugins/FeedsSyndicationParser.inc \FeedsSyndicationParser::parse()
Implements FeedsParser::parse().
Overrides FeedsParser::parse
File
- plugins/
FeedsSyndicationParser.inc, line 18 - Contains FeedsSyndicationParser and related classes.
Class
- FeedsSyndicationParser
- Class definition for Common Syndication Parser.
Code
public function parse(FeedsSource $source, FeedsFetcherResult $fetcher_result) {
feeds_include_library('common_syndication_parser.inc', 'common_syndication_parser');
$feed = common_syndication_parser_parse($fetcher_result
->getRaw());
$result = new FeedsParserResult();
// Return an empty result object when feed is false.
if (!$feed) {
return $result;
}
$result->title = $feed['title'];
$result->description = $feed['description'];
$result->link = $feed['link'];
if (is_array($feed['items'])) {
foreach ($feed['items'] as $item) {
if (isset($item['geolocations'])) {
foreach ($item['geolocations'] as $k => $v) {
$item['geolocations'][$k] = new FeedsGeoTermElement($v);
}
}
$result->items[] = $item;
}
}
return $result;
}