/** * Find the item URL. * * @param SimpleXMLElement $entry Feed item * @param \PicoFeed\Parser\Item $item Item object */ public function findItemUrl(SimpleXMLElement $entry, Item $item) { $link = XmlParser::getXPathResult($entry, 'feedburner:origLink', $this->namespaces) ?: XmlParser::getXPathResult($entry, 'link') ?: XmlParser::getXPathResult($entry, 'atom:link/@href', $this->namespaces); if (!empty($link)) { $item->setUrl(XmlParser::getValue($link)); } else { $link = XmlParser::getXPathResult($entry, 'guid'); $link = XmlParser::getValue($link); if (filter_var($link, FILTER_VALIDATE_URL) !== false) { $item->setUrl($link); } } }
/** * Find the item URL. * * @param SimpleXMLElement $entry Feed item * @param \PicoFeed\Parser\Item $item Item object */ public function findItemUrl(SimpleXMLElement $entry, Item $item) { $link = XmlParser::getXPathResult($entry, 'feedburner:origLink', $this->namespaces) ?: XmlParser::getXPathResult($entry, 'rss:link', $this->namespaces) ?: XmlParser::getXPathResult($entry, 'link') ?: $entry->link; $item->setUrl(XmlParser::getValue($link)); }
/** * Find the item URL. * * @param SimpleXMLElement $entry Feed item * @param \PicoFeed\Parser\Item $item Item object */ public function findItemUrl(SimpleXMLElement $entry, Item $item) { $item->setUrl($this->getUrl($entry, 'alternate', true)); }