Multilingual sitemap

How to build a multilingual sitemap that search engines can use

Learn how to include localized static and dynamic URLs, language alternates, last-modified dates, and supplemental translation sitemaps in a multilingual site.

/ La respuesta corta

A multilingual sitemap should describe the URLs your site actually serves. For dynamic products, articles, and documentation, generate one entry per language version and keep alternate-language relationships consistent with the page head.

/ 01

Fuente de la verdad

Comience con el mapa del sitio propiedad del sitio.

El mapa del sitio de tu aplicación debe contener todas las URL públicas canónicas, incluidas las páginas dinámicas. Considéralo la fuente de información fidedigna sobre qué contenido está activo, indexable y merece la pena descubrir.

  • Use the same public origin as the pages.
  • Include updated timestamps from the source record when possible.
  • Do not include preview, authenticated, or redirected URLs.
Site-owned sitemap
export default function sitemap() {
  return publicPages.map((page) => ({
    url: `https://example.com${page.path}`,
    lastModified: page.updatedAt,
  }));
}
/ 02

Versiones en idioma

Agregar URL localizadas y alternativas

Next.js puede generar enlaces alternativos de idioma a partir de las entradas del mapa del sitio. Para cada página de código fuente, mapee el conjunto completo de URL de idiomas publicadas y mantenga el mapa estable en todas las versiones.

  • Use the same content identity across languages.
  • Exclude a locale until its page is actually published.
  • Keep the canonical URL and sitemap URL consistent.
Localized sitemap entries
export default async function sitemap() {
  const products = await getPublicProducts();
  const locales = ["en", "fr", "de"];

  return products.flatMap((product) => locales.map((locale) => ({
    url: `https://example.com/${locale}/products/${product.slug}`,
    lastModified: product.updatedAt,
    alternates: {
      languages: Object.fromEntries(locales.map((language) => [
        language, `https://example.com/${language}/products/${product.slug}`
      ])),
    },
  })));
}
/ 03

Sitios grandes

Dividir los mapas del sitio sin dividir la propiedad.

Los sitios web grandes pueden usar índices de mapas del sitio y particiones por idioma, tipo de contenido o rango de registros. El índice debe apuntar a mapas del sitio secundarios accesibles, y cada uno de ellos debe mantenerse por debajo de los límites del motor de búsqueda.

  • Use deterministic shard names.
  • Keep one clear index route.
  • Monitor child sitemap response codes and XML validity.
/ 04

Altified flujo de trabajo

Utilice el mapa del sitio complementario para la búsqueda traducida.

Altified puede generar un mapa del sitio suplementario que contenga URL en idiomas adicionales a partir del mapa del sitio existente. No reemplaza el mapa del sitio propietario ni agrega hreflang a las páginas por sí solo; su aplicación aún necesita metadatos recíprocos.

  • Keep /sitemap.xml complete and site-owned.
  • Publish /altified-sitemap.xml after target locales and routes exist.
  • Submit both sitemaps or list both in robots rules.

Lista de verificación de producción

Verifique la experiencia lingüística antes del lanzamiento.

  • The canonical site sitemap returns 200.
  • Every dynamic page is represented.
  • Language URLs are real and indexable.
  • Alternate-language mappings are reciprocal.
  • Sitemap index children are reachable.
  • The Altified supplemental sitemap is submitted separately when used.

Preguntas frecuentes

Preguntas que se hacen los equipos antes de implementar el SEO multilingüe.

What is a multilingual XML sitemap?

Se trata de un mapa del sitio que ayuda a los motores de búsqueda a descubrir URL localizadas, incluyendo opcionalmente relaciones alternativas de idioma XHTML para cada URL de contenido.

Does a sitemap replace hreflang tags?

No. Un mapa del sitio puede proporcionar relaciones de idioma, pero el HTML de la página aún debe exponer metadatos hreflang recíprocos consistentes cuando eso forma parte de la implementación del sitio.

Should the translated sitemap replace the main sitemap?

No. Mantén el mapa del sitio propio como fuente principal de información y utiliza un mapa del sitio traducido complementario solo para añadir URL de idiomas que aún no estén presentes.