| 
							- <?php
 - 
 - namespace dokuwiki\Sitemap;
 - 
 - /**
 -  * An item of a sitemap.
 -  *
 -  * @author Michael Hamann
 -  */
 - class Item
 - {
 -     public $url;
 -     public $lastmod;
 -     public $changefreq;
 -     public $priority;
 - 
 -     /**
 -      * Create a new item.
 -      *
 -      * @param string $url        The url of the item
 -      * @param int    $lastmod    Timestamp of the last modification
 -      * @param string $changefreq How frequently the item is likely to change.
 -      *                           Valid values: always, hourly, daily, weekly, monthly, yearly, never.
 -      * @param $priority float|string The priority of the item relative to other URLs on your site.
 -      *                           Valid values range from 0.0 to 1.0.
 -      */
 -     public function __construct($url, $lastmod, $changefreq = null, $priority = null)
 -     {
 -         $this->url = $url;
 -         $this->lastmod = $lastmod;
 -         $this->changefreq = $changefreq;
 -         $this->priority = $priority;
 -     }
 - 
 -     /**
 -      * Helper function for creating an item for a wikipage id.
 -      *
 -      * @param string       $id         A wikipage id.
 -      * @param string       $changefreq How frequently the item is likely to change.
 -      *                                 Valid values: always, hourly, daily, weekly, monthly, yearly, never.
 -      * @param float|string $priority   The priority of the item relative to other URLs on your site.
 -      *                                 Valid values range from 0.0 to 1.0.
 -      * @return Item The sitemap item.
 -      */
 -     public static function createFromID($id, $changefreq = null, $priority = null)
 -     {
 -         $id = trim($id);
 -         $date = @filemtime(wikiFN($id));
 -         if (!$date) return null;
 -         return new Item(wl($id, '', true), $date, $changefreq, $priority);
 -     }
 - 
 -     /**
 -      * Get the XML representation of the sitemap item.
 -      *
 -      * @return string The XML representation.
 -      */
 -     public function toXML()
 -     {
 -         $result = '  <url>' . NL
 -             . '    <loc>' . hsc($this->url) . '</loc>' . NL
 -             . '    <lastmod>' . date_iso8601($this->lastmod) . '</lastmod>' . NL;
 -         if ($this->changefreq !== null)
 -             $result .= '    <changefreq>' . hsc($this->changefreq) . '</changefreq>' . NL;
 -         if ($this->priority !== null)
 -             $result .= '    <priority>' . hsc($this->priority) . '</priority>' . NL;
 -         $result .= '  </url>' . NL;
 -         return $result;
 -     }
 - }
 
 
  |