Mapas del sitio
Crear archivos de mapa del sitio generados automáticamente a los que se hará referencia desde su robots.txt
. Esto ayuda con la optimización de los motores de búsqueda y el descubrimiento de nuevo contenido. AEM puede generar tres tipos de mapas del sitio: sin ninguna configuración, basados únicamente en un índice de consulta o en una configuración manual de mapa del sitio.
Creación de un mapa del sitio sin ninguna configuración
Si no hace nada, verá su mapa del sitio en sitemap.xml
y tener un índice de mapa del sitio en sitemap.json
. Contiene una lista de todos los documentos publicados.
Si ha empezado con otro tipo de mapa del sitio y desea cambiar a este tipo, debe eliminar el helix-sitemap.yaml
archivo de configuración (definido manualmente en GitHub o generado automáticamente) y reindexe el sitio.
Nombre de dominio utilizado en URL externas
Para personalizar el dominio que se utiliza para crear direcciones URL externas, agregue una propiedad denominada host
o cdn.prod.host
en la configuración de su proyecto (denominado .helix/config
al usar Google Drive como servidor o .helix/config.xlsx
en SharePoint) y previsualice ese archivo para activarlo.
Generación de una configuración de mapa del sitio basada en un índice
Consulte el documento Indexación para obtener más información sobre la indexación. Para generar una configuración de mapa del sitio basada en un índice, asegúrese de que ya ha configurado un índice de consulta inicial como se explica allí. Se generará un mapa del sitio en la ubicación:
https://<branch>--<repo>--<owner>.hlx.page/sitemap.xml
Y una configuración de mapa del sitio en la siguiente ubicación:
https://<branch>--<repo>--<owner>.hlx.page/helix-sitemap.yaml
Se recomienda crear un sitemap-index.xml
que hace referencia a todos los mapas del sitio y los mantiene como parte del código del proyecto en su repositorio de github. De esta manera es fácil agregar nuevos mapas del sitio a medida que el proyecto se expande.
Configuración manual de la configuración del mapa del sitio
Si necesita más personalización de la que proporciona el archivo de configuración de mapa del sitio generado, puede copiar su contenido y pegarlo en un archivo denominado helix-sitemap.yaml
en la carpeta raíz del proyecto.
Nota: Cuando se utiliza un índice y un mapa del sitio configurados manualmente (por ejemplo, el repositorio de código incluye un archivo helix-query.yaml y helix-sitemap.yaml), la definición del índice debe incluir la propiedad robots para garantizar que el mapa del sitio excluya las páginas con robots: noindex
metadatos. Cuando utilice definiciones de índice generadas automáticamente, simplemente siga las recomendaciones de la documentación de indexación por lo tanto, esas páginas se excluyen del índice.
Las secciones siguientes contienen los tipos compatibles de mapas del sitio.
Mapa del sitio simple
Lo siguiente es un sencillo helix-sitemap.yaml
. Supone un solo índice que contiene todas las páginas que deben aparecer en el mapa del sitio.
sitemaps:
example:
source: /query-index.json
destination: /sitemap-en.xml
Si desea que las fechas de la última modificación se incluyan en las direcciones URL del mapa del sitio, agregue una lastmod
propiedad, incluido un formato para la configuración.
sitemaps:
example:
source: /query-index.json
destination: /sitemap-en.xml
lastmod: YYYY-MM-DD
Mapas de varios sitios
Es común tener mapas del sitio por sección de los sitios y/o por país o idioma. AEM admite mapas del sitio, incluidos los correspondientes hreflang
referencias. En el siguiente ejemplo suponemos que hay una asignación uno a uno entre los índices y los archivos XML de mapas del sitio.
sitemaps:
example:
languages:
en:
source: /en/query-index.json
destination: /sitemap-en.xml
hreflang: en
fr:
source: /fr/query-index.json
destination: /sitemap-fr.xml
hreflang: fr
alternate: /fr/{path}
Si hay dos páginas en la sección en inglés y francés que comparten un sufijo común, se relacionarán, por ejemplo, si tiene una página /welcome
en la sección en inglés y una página /fr/welcome
en la sección en francés, la entrada resultante en la /sitemap-en.xml
tendrá un aspecto similar al siguiente:
<url>
<loc>https://wwww.mysite.com/welcome</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://wwww.mysite.com/welcome"/>
<xhtml:link rel="alternate" hreflang="fr" href="https://wwww.mysite.com/fr/welcome"/>
</url>
Una entrada similar estará disponible en /sitemap-fr.xml
.
Especificación manual del idioma principal
Puede haber situaciones en las que tenga versiones alternativas de una página, pero no pueda utilizar un sufijo común para identificarlas, posiblemente porque está portando un sitio web heredado cuya ruta no debería cambiar. En ese caso, puede especificar un primary-language-url
para la ubicación alternativa, en los metadatos del documento.
Supongamos que nuestro idioma principal es el inglés, tenemos una página /welcome
en la sección en inglés y /fr/bienvenu
en la sección francesa, y esta última es una versión alternativa de la primera.
Primero, agregamos esa información al documento en /fr/bienvenu
en sus metadatos:
Esto también se puede añadir a un metadata
hoja, como se muestra en Metadatos masivos.
A continuación, agregamos una propiedad indizada primary-language-url
al índice francés:
primary-language-url:
select: head > meta[name="primary-language-url"]
value: attribute(el, "content")
Finalmente, volvemos a publicar la página en francés, y reconstrucción del mapa del sitio.
Especificación del idioma predeterminado
Otro requisito común es especificar el idioma predeterminado para un mapa del sitio con varios idiomas. Esto se puede lograr agregando una propiedad default
en el mapa:
sitemaps:
example:
default: en
languages:
en:
source: /en/query-index.json
destination: /sitemap-en.xml
hreflang: en
fr:
source: /fr/query-index.json
destination: /sitemap-fr.xml
hreflang: fr
alternate: /fr/{path}
En el mapa del sitio resultante, todas las entradas del subárbol en inglés tendrán una entrada alternativa adicional con hreflang x-default
.
Especificación de varios hreflangs para un subárbol
A veces, es necesario asignar varios hreflangs a un solo subárbol de idioma, por ejemplo, considere que queremos que lo siguiente aparezca en el mapa del sitio resultante:
<url>
<loc>https://myhost/la/page</loc>
<xhtml:link rel="alternate" hreflang="es-VE" href="https://myhost/la/page"/>
<xhtml:link rel="alternate" hreflang="es-SV" href="https://myhost/la/page"/>
<xhtml:link rel="alternate" hreflang="es-PA" href="https://myhost/la/page"/>
</url>
Cada página de nuestro origen de mapa del sitio debe aparecer exactamente una vez, pero tiene múltiples hreflangs alternativos asociados a ella. Para lograrlo, debe especificar una matriz de idiomas en la variable hreflang
propiedad:
sitemaps:
example:
languages:
la:
source: /la/query-index.json
destination: /sitemap-la.xml
hreflang:
- es-VE
- es-SV
- es-PA
Múltiples Índices Agregados En Un Mapa Del Sitio
Hay casos en los que es más fácil tener un solo mapa del sitio más grande que pequeños mapas del sitio fragmentados, especialmente porque hay un límite de mapas del sitio que se pueden enviar a motores de búsqueda por sitio.
El siguiente ejemplo muestra cómo agregar un número de índices independientes en un único mapa del sitio.
sitemaps:
example:
languages:
dk:
source: /dk/query-index.json
destination: /sitemap.xml
hreflang: dk
alternate: /dk/{path}
no:
source: /no/query-index.json
destination: /sitemap.xml
hreflang: no
alternate: /no/{path}
Con el mismo destino es posible combinar varios mapas del sitio pequeños en uno más grande.
Inclusión de otros mapas del sitio como entrada
AEM En un escenario mixto, en el que no se administran todos los idiomas de un mapa del sitio en, puede incluir mapas del sitio de otros árboles de idiomas especificando una ruta XML como fuente, como en:
sitemaps:
example:
languages:
en:
source: /en/query-index.json
destination: /sitemaps/sitemap-en.xml
hreflang: en
fr:
source: https://www.mysite.com/legacy/sitemap-fr.xml
destination: /sitemaps/sitemap-fr.xml
hreflang: fr
alternate: /fr/{path}
En este ejemplo, utilizamos un mapa del sitio en francés externo para calcular todas las ubicaciones de los mapas del sitio. AEM determinará las alternativas para las URL de mapa del sitio en inglés deconstruyendo las contrapartes francesas en el mapa del sitio externo usando alternate
definición.