. */ use Alledia\OSMap\Sitemap\Item; use Joomla\CMS\Language\Language; use Joomla\Utilities\ArrayHelper; defined('_JEXEC') or die(); /** * @var OSMapViewXml $this * @var string $template * @var string $layout * @var string $layoutTemplate * @var Language $lang * @var string $filetofind */ $debug = $this->params->get('debug', 0) ? "\n" : ''; $printNodeCallback = function (Item $node) { $display = !$node->ignore && $node->published && (!$node->duplicate || !$this->osmapParams->get('ignore_duplicated_uids', 1)) && isset($node->newsItem) && !empty($node->newsItem) && $node->visibleForRobots && $node->parentIsVisibleForRobots && $node->visibleForXML && $node->isInternal && trim($node->fullLink) != '' && $node->hasCompatibleLanguage(); /** @var DateTime $publicationDate */ $publicationDate = $this->isNewsPublication($node); if ($display && $publicationDate) { echo ''; echo sprintf('', $node->fullLink); echo ''; echo ''; echo ($publicationName = $this->params->get('news_publication_name', '')) ? '' : ''; if (empty($node->language) || $node->language == '*') { $node->language = $this->language; } echo '' . $node->language . ''; echo ''; echo '' . $publicationDate->format('Y-m-d\TH:i:s\Z') . ''; echo 'name . ']]>'; if (!empty($node->keywords)) { echo 'keywords . ']]>'; } echo ''; echo ''; } return $display; }; echo $this->addStylesheet(); $attribs = [ 'xmlns' => 'http://www.sitemaps.org/schemas/sitemap/0.9', 'xmlns:news' => 'http://www.google.com/schemas/sitemap-news/0.9' ]; echo sprintf($debug . '' . $debug, ArrayHelper::toString($attribs)); $this->sitemap->traverse($printNodeCallback); echo '';