Cómo combinar extensiones de sitemaps

Las extensiones de sitemaps son una forma muy útil de informar a Google sobre los diferentes tipos de contenido y los metadatos que utilizas en tu sitio. A menudo, el contenido de tus páginas puede encajar en varios tipos de extensiones. Por ejemplo, puedes publicar artículos de noticias que tengan imágenes y vídeos insertados. Además, también puedes tener alguna página localizada, lo que significa que podrías añadirle anotaciones hreflang.

Espacios de nombres

En cada extensión de sitemap que quieras usar en un sitemap, tendrás que especificar el espacio de nombres correspondiente que declara las etiquetas admitidas. Para ello, se usa el atributo xmlns de la etiqueta urlset. Los espacios de nombres para las extensiones de sitemap que admite Google son los siguientes:

Etiquetas de extensiones y sus definiciones de espacios de nombres
image: http://www.google.com/schemas/sitemap-image/1.1
news: http://www.google.com/schemas/sitemap-news/0.9
video: http://www.google.com/schemas/sitemap-video/1.1
xhtml: (hreflang) http://www.w3.org/1999/xhtml

Declarar varios espacios de nombres

Para declarar varios espacios de nombres, añade las referencias de los respectivos espacios de nombres a tu sitemap, tal como se describe en la documentación de las extensiones correspondientes. A continuación, incluimos un ejemplo de cómo añadir extensiones de noticias, de vídeo y de xhtml (hreflang) a un sitemap:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:news="http://www.google.com/schemas/sitemap-news/0.9"
        xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"
        xmlns:xhtml="http://www.w3.org/1999/xhtml">
  <url>
  <!-- rest of the sitemap -->

Combinar extensiones de sitemaps

Una vez que hayas declarado tus espacios de nombres, sigue los detalles de implementación de la documentación de la extensión de sitemaps correspondiente que vayas a utilizar.

Para combinar extensiones, añade las etiquetas que quieras de una en una a la etiqueta <url> que corresponda, tal como se describe en la documentación de cada extensión de sitemap.

Por ejemplo, para añadir extensiones de noticias, de vídeo y de xhtml (hreflang) a un sitemap, haz lo siguiente:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:news="http://www.google.com/schemas/sitemap-news/0.9"
        xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"
        xmlns:xhtml="http://www.w3.org/1999/xhtml">
  <url>
    <loc>https://www.example.com/english/page.html</loc>
  <!-- Starting with the news extension tags -->
    <news:news>
      <news:publication>
        <news:name>The Example Times</news:name>
        <news:language>en</news:language>
      </news:publication>
      <news:publication_date>2008-12-23</news:publication_date>
      <news:title>Companies A, B in Merger Talks</news:title>
    </news:news>
  <!-- Next we add video extension tags -->
    <video:video>
      <video:thumbnail_loc>https://www.example.com/thumbs/123.jpg</video:thumbnail_loc>
      <video:title>Lizzi is painting the wall</video:title>
      <video:description>
        Gary is watching the paint dry on the wall Lizzi painted.
      </video:description>
      <video:player_loc>
        https://player.example.com/video/987654321
      </video:player_loc>
    </video:video>
  <!-- And finally the xhtml tags for hreflang -->
    <xhtml:link
               rel="alternate"
               hreflang="de"
               href="https://www.example.de/deutsch/page.html"/>
    <xhtml:link
               rel="alternate"
               hreflang="de-ch"
               href="https://www.example.de/schweiz-deutsch/page.html"/>
    <xhtml:link
               rel="alternate"
               hreflang="en"
               href="https://www.example.com/english/page.html"/>
  </url>
  <!-- Add more <url> tags -->

El orden de la extensión en el sitemap es irrelevante después de la etiqueta <loc>. Ten en cuenta las prácticas recomendadas generales sobre sitemaps, sobre todo los límites de tamaño del archivo, ya que combinar extensiones de sitemaps aumenta el tamaño de archivo del sitemap de forma significativa.