Creo un sitemap dinámico con este código
Código PHP:
Ver original<?php
header("Cache-Control: public"); header("Content-Description: Sitemap"); header("Content-Type: application/xml");
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" . "\r\n";
echo "<urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\" xmlns:image=\"http://www.google.com/schemas/sitemap-image/1.1\">" . "\r\n";
echo "<url>".
"<loc>http://www.website.com/</loc>";
$mysqli = @new mysqli("localhost", "root", "", "bd");
$mysqli->set_charset("utf8");
$cadena = "SELECT * FROM tabla ORDER BY grupo, grupoPosicion ASC";
$resultado = $mysqli->query($cadena);
while ($row = $resultado->fetch_array(MYSQLI_ASSOC)) {
echo "<image:image>".
"<image:loc>http://website.com/images/misc/301/".$row["imgNombre"]."</image:loc>".
"<image:geo_location>".$row["imgUbicacion"]."</image:geo_location>".
"<image:title>".$row["imgTitulo"]."</image:title>".
"<image:caption>".$row["txtalternativo"]."</image:caption>".
"</image:image>";
}
$resultado->free();
$mysqli->close();
echo "<changefreq>monthly</changefreq>".
"<lastmod>".$fecha."</lastmod>".
"<priority>.8</priority>".
"</url>".
"</urlset>";
?>
Y genera
Código XML:
Ver original<?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.website.com/</loc>
<image:image>
<image:loc>http://www.website.com/images/misc/visor/img1.jpg</image:loc>
<image:geo_location>Coslada</image:geo_location>
<image:title>Amigos</image:title>
<image:caption>pandilla de chicos</image:caption>
</image:image>
<image:image>
<image:loc>http://www.website.com/images/misc/visor/img2.jpg</image:loc>
<image:geo_location>Coslada</image:geo_location>
<image:title>Familia</image:title>
<image:caption>familia pasando el día</image:caption>
</image:image>
.......
<changefreq>monthly</changefreq>
<lastmod>2016-11-01T14:26:58+01:00</lastmod>
<priority>.8</priority>
</url>
</urlset>
Cuando lo compruebo, google me dice
Cita: No hemos podido leer su sitemap. Es posible que contenga una entrada que no podemos reconocer. Valide el sitemap antes de volverlo a enviar. --> Linea 5
No logro dar con el error