Mapas do site

Crie arquivos de mapa de site gerados automaticamente para serem referenciados a partir do robots.txt. Isso ajuda na SEO e na descoberta de novos conteúdos. O AEM pode gerar três tipos de mapas de site: sem qualquer configuração, com base exclusivamente em um índice de consulta ou com base em uma configuração manual de mapa de site.

Criação de um Mapa do site sem qualquer configuração

Se não fizer nada, você verá seu mapa do site no sitemap.xml e têm um índice de mapa de site no sitemap.json. Ele conterá uma lista de todos os documentos publicados.

Se você começou com outro tipo de mapa de site e deseja mudar para esse tipo, será necessário excluir o helix-sitemap.yaml arquivo de configuração - definido manualmente no GitHub ou gerado automaticamente - e reindexe o site.

Nome de domínio usado em URLs externos

Para personalizar o domínio usado na criação de URLs externos, adicione uma propriedade chamada host ou cdn.prod.host na configuração do seu projeto (denominado .helix/config ao usar o Google Drive como back-end ou .helix/config.xlsx no Sharepoint) e visualize esse arquivo para ativá-lo.

Gerar uma configuração de Mapa do site com base em um índice

Consulte o documento Indexação para saber mais sobre indexação. Para gerar uma configuração de mapa de site com base em um índice, verifique se você já configurou um índice de consulta inicial, conforme explicado aqui. Isso gerará um mapa de site no local:

https://<branch>--<repo>--<owner>.hlx.page/sitemap.xml

E uma configuração de mapa de site no seguinte local:

https://<branch>--<repo>--<owner>.hlx.page/helix-sitemap.yaml

É recomendável criar um sitemap-index.xml arquivo que faz referência a todos os mapas de site e os mantém como parte do código do projeto no repositório github. Dessa forma, é fácil adicionar novos mapas de site à medida que o projeto se expande.

Configuração manual do mapa do site

Se você precisar de mais personalização do que o arquivo de configuração de mapa de site gerado fornece, é possível copiar o conteúdo e colá-lo em um arquivo chamado helix-sitemap.yaml na pasta raiz do seu projeto.

Nota: Ao usar um índice e um mapa de site configurados manualmente (por exemplo, o repositório de código inclui um arquivo helix-query.yaml e helix-sitemap.yaml ), a definição de índice deve incluir a propriedade robots para garantir que o mapa de site exclua páginas com robots: noindex metadados. Ao usar definições de índice geradas automaticamente, siga as recomendações na documentação de indexação portanto, essas páginas são excluídas do índice.

As seções a seguir contêm os tipos de mapas de site compatíveis.

Mapa do site simples

Veja a seguir um exemplo simples helix-sitemap.yaml. Ele pressupõe um único índice contendo todas as páginas que precisam aparecer no mapa de site.

 sitemaps:
   example:
     source: /query-index.json
     destination: /sitemap-en.xml

Se quiser que as datas da última modificação sejam incluídas nos URLs do mapa de site, adicione um lastmod incluindo um formato para sua configuração.

 sitemaps:
   example:
     source: /query-index.json
     destination: /sitemap-en.xml
     lastmod: YYYY-MM-DD

Vários mapas de site

É comum ter mapas de site por seção dos sites e/ou por país ou idioma. O AEM suporta mapas de site, incluindo os correspondentes hreflang referências. No exemplo a seguir, pressupomos que haja um mapeamento de um para um entre os índices e os arquivos XML de mapas de site.

 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}

Se houver duas páginas na seção em inglês e francês que compartilhem um sufixo comum, elas serão relacionadas, por exemplo, se você tiver uma página /welcome na seção em inglês e em uma página /fr/welcome na seção francesa, a entrada resultante na variável /sitemap-en.xml terá esta aparência:

<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>

Uma entrada semelhante estará disponível em /sitemap-fr.xml.

Especificação manual do idioma principal

Pode haver situações em que você tenha versões alternativas de uma página, mas não é possível usar um sufixo comum para identificá-las, possivelmente porque você está exportando um site herdado que não deve ter seus caminhos alterados. Nessa situação, você pode especificar um primary-language-url para o local alternativo, nos metadados do documento.

Vamos supor que nosso idioma principal seja o inglês, temos uma página /welcome na seção em inglês e /fr/bienvenu na seção francesa, e a última é uma versão alternativa da primeira.

Primeiro, adicionamos essas informações ao documento em /fr/bienvenu nos metadados:

Isso também pode ser adicionado a uma variável global metadata planilha, conforme mostrado na Metadados em massa.

Em seguida, adicionamos uma propriedade indexada primary-language-url ao índice francês:

 primary-language-url:
   select: head > meta[name="primary-language-url"]
   value: attribute(el, "content")

Por fim, publicamos novamente a página em francês e recriar o mapa do site.

Especificação do idioma padrão

Outro requisito comum é especificar o idioma padrão para um mapa de site com vários idiomas. Isso pode ser feito adicionando uma propriedade default no mapa do site:

 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}

No mapa de site resultante, todas as entradas da subárvore em inglês terão uma entrada alternativa extra com hreflang x-default.

Especificação de vários hreflangs para uma subárvore

Às vezes, é necessário mapear vários hreflangs para apenas uma subárvore de idioma. Por exemplo, considere que queremos que o seguinte apareça no mapa de site 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 na origem do mapa de site deve aparecer exatamente uma vez, mas ter vários hreflangs alternativos associados a ela. Para fazer isso, você deve especificar uma matriz de idiomas no hreflang propriedade:

 sitemaps:
   example:
     languages:
       la:
         source: /la/query-index.json
         destination: /sitemap-la.xml
         hreflang:
           - es-VE
           - es-SV
           - es-PA

Vários Índices Agregados Em Um Mapa Do Site

Há casos em que é mais fácil ter um único mapa de site maior do que mapas de site pequenos fragmentados, especialmente porque há um limite de mapas de site que podem ser enviados para mecanismos de pesquisa por site.

O exemplo a seguir mostra como agregar vários índices separados em um único mapa de site.

 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}

Usando o mesmo destino, é possível combinar vários mapas de site pequenos em um mapa de site maior.

Incluir outros mapas de site como entrada

Em um cenário misto, em que nem todos os idiomas em um mapa de site são gerenciados no AEM, você pode incluir mapas de site de outras árvores de idioma especificando um caminho XML como origem, como em:

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}

Neste exemplo, usamos um mapa de site externo da França para calcular todos os locais do mapa de site. O AEM determinará alternativas para URLs de mapa de site em inglês, desconstruindo os equivalentes em francês no mapa de site externo usando o alternate definição.

recommendation-more-help
10a6ce9d-c5c5-48d9-8ce1-9797d2f0f3ec