Problem s vytvorenim sitemap

Tomas8698
Člen | 109
+
0
-

Dobrý deň,
Chcel by som sa spýtať, ako spraviť Sitemap, zatiaľ som to nerobil našiel som len na nete vzor a podľa neho to spravil. Chcel by som sa spýtať aj ako overím že funguje a aj ci na to idem správne. Za pomoc ďakujem.
Môj sitemap vyzerá takto:

<?php
<?xml version="1.0" encoding="UTF-8" ?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

    {foreach $langs as $lang}

        <url>
            <loc>{link Homepage:default $lang }</loc>
            <changefreq>weekly</changefreq>
            <priority>1.0</priority>
        </url>
    {/foreach }

    {foreach $articles as $article}
        <url>
            <loc>{link Homepage:default $article['urlseo'] ,$article['locale']}</loc>

            <changefreq>weekly</changefreq>

            <priority>0.8</priority>

        </url>
    {/foreach }

</urlset>

?>

a v presenteri ho mam nastaveny takto:

<?php

    public function renderSitemap(): void
    {
        $articles = $this->database->table('articles')->fetchAll();

        //pouziji jako hlavni sablonu prazdnou sablonu
        $this->setLayout('empty');
        // zajisti genrovani ablolutnich URL
        $this->absoluteUrls = true;
        $this->template->articles = $articles;
        $this->template->langs=$this->langs;
        $this->getHttpResponse()->setContentType('application/xml');

        //bdump($articles);
    }

?>

A router vyzera takto :

<?php
public static function createRouter(): RouteList
	{
		$router = new RouteList;
        $router->addRoute('', "Homepage:index");
        $router->addRoute('sitemap.xml', 'Article:sitemap');
        $router->addRoute('/<locale= cs|en>/<urlseo>', 'Article:default');
        $router->addRoute('[<locale= cs|en>/]<presenter>/<action>[/<id>]', "Homepage:default");


        return $router;
	}
?>

Pridam aj zdrojovy kod stranky pre lepsi prehlad https://github.com/…o/tree/Tomas