Example #1
0
 /**
  * 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);
         }
     }
 }
Example #2
0
 /**
  * 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));
 }
Example #3
0
 /**
  * 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));
 }