Indexering

Adobe Experience Manager erbjuder ett sätt att hålla ett index över alla publicerade sidor i ett visst avsnitt på webbplatsen. Detta används ofta för att skapa listor, feeds och aktivera sök- och filtreringsanvändning för dina sidor eller innehållsfragment.

AEM sparar indexet i ett kalkylblad och ger åtkomst till det med JSON. Mer information finns i dokumentet Kalkylblad och JSON.

Vi presenterar begreppet att skapa ett frågeindex genom att först förhandsgranska en Excel-arbetsbok eller ett Google-kalkylblad. Observera, att om du redan har en anpassad frågedefinition i en fil med namnet helix-query.yaml i din GitHub-databas går det inte längre att skapa index på det sättet. Alla nya index måste läggas till manuellt i helix-query.yaml.

Konfigurera ett startfrågeindex

I det här avsnittet skapar vi ett frågeindex i rotmappen som indexerar alla dokument i serverdelen.

  1. När du har konfigurerat fstab.yaml med en monteringspunkt som pekar på din SharePoint-webbplats eller Google Drive går du till rotmappen.
  2. Beroende på din serverdel skapar du antingen en arbetsbok med namnet query-index.xlsx för SharePoint eller ett kalkylblad med namnet query-index för Google Drive.
  3. Skapa ett blad med namnet raw_index i det kalkylbladet eller arbetsboken.

Ange egenskaper som ska läggas till i indexet

  1. Lägg till en rubrikrad i ditt query-index-dokument och lägg till path som rubriknamn i den första kolumnen.
  2. I följande kolumner på rubrikraden lägger du till alla andra egenskaper som du behöver extraherade från den återgivna HTML-sidan.

I följande exempel i Google Drive är de extraherade fälten title, image, description och lastModified.

Sidorna indexeras när de publiceras. Om du vill ta bort sidor från indexet måste de avpubliceras.

För enkla scenarier utan anpassad indexdefinition utelämnas sidor med metadataegenskapen robots inställd på noindex automatiskt från indexering av AEM. (Det finns några specialscenarier här. Mer information finns i avsnittet Specialscenarier för rotationer.)

I följande tabell sammanfattas de tillgängliga egenskaperna och varifrån på HTML-sidan de extraheras.

Namn
Beskrivning
author
Returnerar innehållet i metataggen author i elementet head.
title
Returnerar innehållet i metaegenskapen og:title i elementet head.
date
Returnerar innehållet i metataggen publication-date i elementet head.
image
Returnerar innehållet i metaegenskapen og:image i elementet head.
category
Returnerar innehållet i metataggen category i elementet head.
tags

Returnerar innehållet i metataggen article:tag i elementet head som en array.

Mer information om arrayhantering finns i dokumentet Kalkylblad och JSON.

description
Returnerar innehållet i metataggen description i elementet head.
robots
Returnerar innehållet i metataggen robots i elementet head.
lastModified
Returnerar värdet för dokumentets Last-Modified-svarshuvud.

För varje annan rubrik som läggs till försöker indexeraren hitta en metatagg med motsvarande namn.

Aktivera index

Om du vill aktivera indexet förhandsgranskar du kalkylbladet med hjälp av sidosparken. Detta skapar en indexkonfiguration.

Kontrollerar ditt index

Administrationstjänsten har en API-slutpunkt där du kan kontrollera sidans indexrepresentation. Med tanke på din GitHub-ägare, databas, gren och ägare och en resurssökväg till en sida är slutpunkten:

https://admin.hlx.page/index/<owner>/<repo>/<branch>/<path>

Du bör få ett JSON-svar där datanoden innehåller sidans indexbeteckning.

Felsöka indexkonfigurationen

AEM CLI har en funktion där indexposten skrivs ut när du ändrar frågekonfigurationen, vilket hjälper dig att hitta rätt CSS-väljare:

$ aem up --print-index

Mer information finns i AEM CLI GitHub-dokumentationen och i den här videon finns mer information om den här funktionen.

Konfigurera fler indexkonfigurationer

Du kan definiera egna indexkonfigurationer genom att skapa en egen helix-query.yaml. Det gör att du kan ha mer än en indexkonfiguration i samma helix-query.yaml där delar av dina webbplatser indexeras till olika Excel-arbetsböcker eller Google-kalkylblad. Mer information finns i dokumentet Indexeringsreferens.

Specialscenarier för robotar

Det finns några nyanser om hur AEM indexerar sidor i samband med indexeringen av webbplatsen. Låt oss titta på dem:

I följande två situationer kan du robots ange noindex på sidans metadata inte för att förhindra att den indexeras av AEM:

  • Du har lagt till kolumnen robots i query-index.xlsx
  • Du har helix-query.yaml i din Github-databas, d.v.s. du har definierat en anpassad indexdefinition.

Rekommendationer

  1. Om du inte har någon anpassad indexdefinition rekommenderar vi att du inte lägger till en robots-kolumn i indexbladet, såvida du inte behöver göra det.
    Om du lägger till robots-kolumnen i indexbladet kommer en sida att indexeras av AEM även om robots-metadata kan ha angetts till noindex.
  2. Om du har en anpassad indexdefinition indexeras sidorna av AEM oavsett om robots har angetts till noindex på sidans metadata. Om du vill förhindra att detta händer kan du använda kalkylbladsfilter för att utesluta sidor från index som har robots metadata inställda på noindex. Mer information finns i avsnittet Tvingande noindex konfiguration med anpassade indexdefinitioner nedan.

Tillämpar "noindex"-konfiguration med anpassade indexdefinitioner

Om du har definierat egna indexdefinitioner i helix-query.yaml är det inte bra att ange egenskapen robots till noindex för att förhindra att sidorna indexeras. Så här framtvingar du noindex konfigurationen:

  1. Skapa ett blad med namnet helix-default i din query-index.xlsx . Därefter bör ditt query-index.xlsx-kalkylblad ha 2 ark “raw_index och “helix-default. Bladet “raw_index finns där för att ha alla obearbetade indexerade data.
  2. Ändra din anpassade helix-query.yaml (den måste finnas i ditt projekts Github-databas) och lägg till egenskapen robots så att den indexeras.
  3. Konfigurera nu ditt “helix-default-blad i kalkylbladet query-index.xlsx så att det fylls i automatiskt med Excel-formeln som ser till att alla rader i raw_index som har egenskapen robots inställd på noindex inte kopieras över till bladet helix-default. Detta kan du göra genom att använda en Excel-formel som denna =FILTER(Table1,NOT(Table1[robots]="noindex"))
  4. Nu har Helix-standardbladet bara rader från raw_index som inte har egenskapen robots inställd på noindex.
  5. Kontrollera att du publicerar sidorna som du vill indexera.
  6. Om du nu hämtar indexet som vanligt, till exempel: https://<branch>--<repo>-<org>.hlx.page/query-index.json, hämtar du bara data från helix-default sheet, d.v.s. poster som inte uttryckligen hindras från att indexeras via robot -egenskapsuppsättningen som noindex.
recommendation-more-help
10a6ce9d-c5c5-48d9-8ce1-9797d2f0f3ec