Example #1
0
 function sitemap_xml_walk($sitemap, $parent = '')
 {
     $output = '';
     foreach ($sitemap as $slug => $page) {
         $uri = $parent . $slug;
         // If hidden
         if (!Xysti::meta('disabled', $page) && !Xysti::meta('auth', $page)) {
             $output .= '<url>' . PHP_EOL;
             $output .= '<loc>' . URL::base() . '/' . $uri . '</loc>' . PHP_EOL;
             foreach (array('lastmod', 'changefreq', 'priority') as $attr) {
                 if (isset($page['sitemap'][$attr])) {
                     $output .= '<' . $attr . '>' . $page['sitemap'][$attr] . '</' . $attr . '>' . PHP_EOL;
                 }
             }
             $output .= '</url>' . PHP_EOL;
         }
         // If children
         if (isset($page['/']) && is_array($page['/'])) {
             $output .= sitemap_xml_walk($page['/'], $uri . '/');
         }
     }
     return $output;
 }
Example #2
0
/**
 * Output heading
 * 
 * Generate <h1>, <h2> etc
 * @param array $args
 */
function page_title($args = array())
{
    $args = array_merge(array('echo' => TRUE, 'a' => FALSE, 'tag' => 'h1', 'caption' => Xysti::page('caption'), 'href' => URI::current(), 'title' => Xysti::page('title')), $args);
    $output = '';
    $output .= '<' . $args['tag'] . '>';
    if ($args['a']) {
        $output .= '<a href="' . $args['href'] . '">';
    }
    $output .= $args['title'];
    if ($args['caption']) {
        $output .= ' <span class="caption">' . $args['caption'] . '</span>';
    }
    if ($args['a']) {
        $output .= '</a>';
    }
    $output .= '</' . $args['tag'] . '>' . PHP_EOL;
    if ($args['echo']) {
        echo $output;
    } else {
        return $output;
    }
}
Example #3
0
 /**
  * Count URI segments
  * @var string $uri
  * @return int
  */
 public static function uri_count($uri = NULL)
 {
     if (is_null($uri)) {
         $uri = URI::current();
     }
     return count(Xysti::uri_array($uri));
 }