Sitemap is a tool to generate XML sitemaps quickly.
$basic = new \Sitemap\Sitemap\SitemapEntry('http://example.com/page-1');
$basic->setLastMod(time());
$collection = new \Sitemap\Collection;
$collection->addSitemap($basic);
// There's some different formatters available.
$collection->setFormatter(new \Sitemap\Formatter\XML\URLSet);
$collection->setFormatter(new \Sitemap\Formatter\XML\SitemapIndex);
$collection->output();
Output
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>http://example.com/page-1</loc>
<lastmod>1359837115</lastmod>
</url>
</urlset>
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>http://example.com/page-1</loc>
<lastmod>1359837115</lastmod>
</sitemap>
</urlset>
// Image 1
$image1 = new Sitemap\Sitemap\ImageEntry('https://s3.amazonaws.com/path/to/image');
// Image 2 with multiple attributes
$image2 = new Sitemap\Sitemap\ImageEntry('https://s3.amazonaws.com/path/to/image2');
$image2->setCaption('Test Caption');
$image2->setGeoLocation('Limerick, Ireland');
$image2->setTitle('Test Title');
$image2->setLicense('http://www.license.com');
$basic1 = new Sitemap\Sitemap\SitemapImageEntry('http://www.example.com/1');
$basic1->addImages($image1);
$basic1->addImages($image2);
$basic2 = new Sitemap\Sitemap\SitemapImageEntry('http://www.example.com/2');
$basic2->addImages($image1);
$basic2->addImages($image2);
$collection = new Sitemap\Collection;
$collection->addSitemap($basic1);
$collection->addSitemap($basic2);
$collection->setFormatter(new SitemapImage);
$collection->output();
Output
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
<url>
<loc>http://www.example.com/1</loc>
<image:image>
<image:loc>https://s3.amazonaws.com/path/to/image</image:loc>
</image:image>
<image:image>
<image:loc>https://s3.amazonaws.com/path/to/image2</image:loc>
<image:caption>Test Caption</image:caption>
<image:geo_location>Limerick, Ireland</image:geo_location>
<image:title>Test Title</image:title>
<image:license>http://www.license.com</image:license>
</image:image>
</url>
<url>
<loc>http://www.example.com/2</loc>
<image:image>
<image:loc>https://s3.amazonaws.com/path/to/image</image:loc>
</image:image>
<image:image>
<image:loc>https://s3.amazonaws.com/path/to/image2</image:loc>
<image:caption>Test Caption</image:caption>
<image:geo_location>Limerick, Ireland</image:geo_location>
<image:title>Test Title</image:title>
<image:license>http://www.license.com</image:license>
</image:image>
</url>
</urlset>