Oto przykład quick'n'dirty aby grać z i dostosować do własnych potrzeb:
W kontrolerze:
public $components = array('RequestHandler');
public function sitemap()
{
Configure::write('debug', 0);
$articles = $this->Article->getSitemapInformation();
$this->set(compact('articles'));
$this->RequestHandler->respondAs('xml');
}
Twój "Artykuł" model:
public function getSitemapInformation()
{
return $this->find('all', array(/* your query here */));
}
Wyświetl:
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<?php foreach ($articles as $article): ?>
<url>
<loc><?php echo Router::url(/* generate the URLs here */); ?></loc>
<lastmod><?php echo $time->toAtom(/* last update time here */); ?></lastmod>
<changefreq>weekly</changefreq>
</url>
<?php endforeach; ?>
</urlset>
dzięki na przykład – meotimdihia
Pamiętaj, aby dodać publiczną "$ components = array" ("RequestHandler"); "w kontrolerze (lub AppController.php dla dostępu do całej aplikacji), aby to działało. – Coreus
@Coreus Zaktualizowałem odpowiedź, dzięki! –