¿Cómo generar un archivo sitemap.xml para su sitio web dinámico?
Supongamos que tenemos un sitio web dinámico y los artículos se almacenan en una base de datos. Una tabla denominada artículos contiene todos los contenidos y los campos que necesitamos para generar nuestro sitemap.xml son article_id y date_last_mod.
article_id es el identificador del registro del artículo.
date_last_mod es la fecha del último artículo actualizado.
function get_site_map_content() { $xml = ""; $home = 'http://mywebsite.com/'; $xml .= '<?xml version="1.0" encoding="UTF-8"?>'."\r\n"; $xml .= '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">'."\r\n"; $con = mysql_connect($server, $username, $password); if($con) { if(mysql_select_db($dbname)) { $rslt = mysql_query('SELECT * FROM articles ORDER BY date_last_mod DESC', $con); if($rslt) { $row = mysql_fetch_row($rslt); if($row) { // Home $xml .= "\t<url>\r\n\t\t<loc>".$home."</loc>\r\n\t"; $xml .= "\t<lastmod>".$row[date_last_mod]."</lastmod>\r\n\t"; $xml .= "\t<changefreq>weekly</changefreq>\r\n\t"; $xml .= "\t0.8</priority>\r\n\t</url>\r\n"; // All of the articles do { $xml .= "\t<url>\r\n\t\t<loc>".$home."article.php?id=".$row[article_id]."</loc>\r\n\t"; $xml .= "\t<lastmod>".$row[date_last_mod]."</lastmod>\r\n\t</url>\r\n"; } while($row = mysql_fetch_row($rslt)); $xml .= "</urlset>\r\n"; } } } mysql_close($con); } return $xml; }
Después de escribir la cabecera estándar sitemap.xml, lo primero que haremos es definir la última fecha de actualización de la página de inicio de nuestro sitio web a la fecha del más reciente artículo o post. A continuación, vamos a generar una entrada de mapa de sitio para cada artículo en la tabla artículos.
El código es tan sencillo y se puede editar de acuerdo a sus necesidades…
Para obtener más información, por favor lea esto
Entradas relacionadas