assign('pages_list', Pages::getPages()) ->assign('components', Sitemap::getComponents()) ->render(); } /** * Create sitemap */ public static function create() { // Get pages list $pages_list = Pages::getPages(); // Create sitemap content $map = ''."\n"; $map .= ''."\n"; foreach ($pages_list as $page) { if ($page['parent'] != '') { $parent = $page['parent'].'/'; $priority = '0.5'; } else { $parent = ''; $priority = '1.0'; } $map .= "\t".''."\n\t\t".''.Option::get('siteurl').'/'.$parent.$page['slug'].''."\n\t\t".''.date("Y-m-d", (int) $page['date']).''."\n\t\t".'weekly'."\n\t\t".''.$priority.''."\n\t".''."\n"; } // Get list of components $components = Sitemap::getComponents(); // Add components to sitemap if (count($components) > 0) { foreach ($components as $component) { $map .= "\t".''."\n\t\t".''.Option::get('siteurl').'/'.Text::lowercase($component).''."\n\t\t".''.date("Y-m-d", time()).''."\n\t\t".'weekly'."\n\t\t".'1.0'."\n\t".''."\n"; } } // Close sitemap $map .= ''; // Save sitemap return File::setContent(ROOT . DS . 'sitemap.xml', $map); } /** * Get components */ protected static function getComponents() { $components = array(); if (count(Plugin::$components) > 0) { foreach (Plugin::$components as $component) { if ( ! in_array($component, Sitemap::$forbidden_components)) $components[] = Text::lowercase($component); } } return $components; } }