Indexação
O Adobe Experience Manager oferece uma maneira de manter um índice de todas as páginas publicadas em uma seção específica do site. Normalmente, isso é usado para criar listas, feeds e habilitar casos de uso de pesquisa e filtragem para suas páginas ou fragmentos de conteúdo.
O AEM mantém esse índice em uma planilha e oferece acesso a ele usando JSON. Consulte o documento Planilhas e JSON para obter mais informações.
Configuração de um índice de consulta inicial
Nesta seção, criaremos um índice de consulta na pasta raiz que indexará todos os documentos no back-end.
- Depois de configurar seu
fstab.yaml
com um ponto de montagem que aponta para o site do SharePoint ou para o Google Drive, vá para a pasta raiz. - Dependendo do back-end, crie uma pasta de trabalho chamada
query-index.xlsx
para SharePoint ou uma planilha chamadaquery-index
para Google Drive. - Nessa planilha ou pasta de trabalho, crie uma planilha chamada
raw_index
.
Configuração das propriedades a serem adicionadas ao índice
- No seu
query-index
documento, adicione uma linha de cabeçalho e, na primeira coluna, adicionepath
como o nome do cabeçalho. - Nas colunas a seguir da linha de cabeçalho, adicione todas as outras propriedades que precisam ser extraídas da página de HTML renderizado.
No exemplo a seguir no Google Drive, os campos extraídos são title
, image
, description
, e lastModified
.
As páginas são indexadas quando publicadas. Para remover páginas do índice, é necessário desfazer a publicação.
Para cenários simples sem definição de índice personalizada, as páginas que têm robots
propriedade de metadados definida como noindex
serão automaticamente omitidos da indexação pelo AEM. (Há alguns cenários especiais aqui. Para obter mais detalhes, consulte a seção Cenários especiais para robôs).
A tabela a seguir resume as propriedades que estão disponíveis e de onde na página do HTML elas são extraídas.
Para cada outro cabeçalho adicionado, o indexador tentará localizar uma meta tag com um nome correspondente.
Ativar o índice
Para ativar seu índice, visualize a planilha usando o sidekick. Isso criará uma configuração de índice.
Verificando seu índice
O Admin Service tem um endpoint de API onde você pode verificar a representação de índice da sua página. Dado seu proprietário, repositório, ramificação e proprietário do GitHub e um caminho de recurso para uma página, seu endpoint é:
https://admin.hlx.page/index/<owner>/<repo>/<branch>/<path>
Você deve obter uma resposta JSON em que o nó de dados contém a representação de índice da página.
Depurando a configuração do índice
A CLI do AEM tem um recurso no qual ela imprimirá o registro do índice sempre que você alterar a configuração da consulta, o que ajuda a encontrar os seletores de CSS corretos:
$ aem up --print-index
Consulte a Documentação do GitHub da CLI do AEM para obter mais informações e assista a este vídeo para saber mais sobre este recurso.
Definição de mais configurações de índice
Você pode definir suas próprias configurações de índice personalizadas criando suas próprias helix-query.yaml.
Isso permite que você tenha mais de uma configuração de índice na mesma helix-query.yaml
, em que partes dos sites são indexadas em diferentes pastas de trabalho do Excel ou planilhas do Google. Consulte o documento Referência de indexação para obter mais informações.
Cenários especiais para robôs
Há algumas nuances em como as páginas são indexadas pelo AEM em conjunto com a configuração de indexação do seu site. Vamos analisá-los:
Nas 2 situações a seguir, definir robots
para noindex
nos metadados da página não impedir que seja indexado pelo AEM:
- Você adicionou um
robots
coluna emquery-index.xlsx
- Você tem um
helix-query.yaml
no repositório do GitHub, ou seja, você definiu um definição de índice personalizado.
Recomendações
- Se você não tiver uma definição de índice personalizada, é recomendável não adicionar um
robots
para a folha de índice, a menos que você tenha um requisito para isso.
Adicionandorobots
para sua folha de índice faria com que uma página fosse indexada pelo AEM, mesmo que ela tivesserobots
metadados definidos comonoindex.
- Se você tiver uma definição de índice personalizada, as páginas seriam indexadas pelo AEM independentemente da configuração
robots
paranoindex
nos metadados da página. Caso deseje impedir que isso aconteça, é possível usar filtros de planilha para omitir páginas de índice que tenhamrobots
metadados definidos comonoindex
. Para obter mais detalhes, consulte a seção "Aplicaçãonoindex
configuração com definições de índice personalizadas" abaixo.
Aplicação da configuração "noindex" com definições de índice personalizadas
Se você tiver definido suas próprias definições de índice personalizadas no helix-query.yaml
, definindo o robots
propriedade para noindex
O não é eficaz para impedir que as páginas sejam indexadas. A fim de aplicar a noindex
nessas situações, faça o seguinte:
- Crie uma planilha com o nome "
helix-default
" no seuquery-index.xlsx
. Depois disso, seuquery-index.xlsx
a planilha deve ter duas planilhas“raw_index
" e“helix-default
". A variável“raw_index
"A planilha está lá para ter todos os dados brutos indexados. - Modificar seu personalizado
helix-query.yaml
(deve estar no repositório Github do projeto) e adicione orobots
para que seja indexada. - Agora, configure seu
“helix-default
" na guiaquery-index.xlsx
planilha para ser preenchida automaticamente usando a fórmula do Excel que garante que todas as linhas emraw_index
que tenhamrobots
propriedade definida comonoindex
, não sejam copiados para ohelix-default
planilha. Isso pode ser feito usando uma fórmula do Excel como essa=FILTER(Table1,NOT(Table1[robots]="noindex"))
- Agora, a sua folha helix padrão tem apenas as linhas de
raw_index
que não têmrobots
propriedade definida comonoindex
. - Publique as páginas que deseja indexar.
- Agora, se você buscar o índice como de costume, como:
https://<branch>--<repo>-<org>.hlx.page/query-index.json
, você só obteria dados dehelix-default
ou seja, entradas que não são explicitamente impedidas de serem indexadasrobot
propriedade definida comonoindex
.