Skip to main content

Documentation Index

Fetch the complete documentation index at: https://dokumentation.websale.de/llms.txt

Use this file to discover all available pages before exploring further.

Der Knoten search steuert die interne Produktsuche (nicht die WEBSALE Search) und Listing-Seiten im Shop - z.B. welche Filter angeboten werden, welche Sortieroptionen verfügbar sind und wie viele Treffer pro Seite angezeigt werden. Er trennt die Einstellungen für Kategorie und Suchergebnissen und erlaubt die Definition einzelner Filter und Sortierregeln als wieder verwendbare Bausteine.

search* - Grundstruktur

Nachfolgend der Grundaufbau des Knotens search:
{
  "search": {
    "categoryNavigation": {},
    "productSearchNavigation": {},
    "productFilter": {},
    "productSortOption": {}
  }
}
Parameterbeschreibung
ParameterBeschreibung
categoryNavigationSteuert Filter, Sortierung und Treffer pro Seite auf Kategorie-/Listingseiten.
productSearchNavigationSteuert Filter, Sortierung und Treffer pro Seite auf Suchergebnisseiten.
productFilterDefiniert einen Filterbaustein.
productSortOptionDefiniert eine Sortierregel zur Verwendung in Kategorie- und Suchlisten.

search.categoryNavigation - Filter und Sortierung für Kategorieseiten

Der Knoten search.categoryNavigationsteuert, welche Filter und Sortierungen in Kategorieseiten verfügbar sind, welche Standardsortierung gilt sowie die Treffer pro Seite. Beispielkonfiguration
{
  "defaultResultsPerPage": 16,
  "defaultSortOption": "search.productSortOption.relevance",
  "keepSortSettings": true,
  "productFilters": [
    "search.productFilter.price",
    "search.productFilter.clothingLength",
    "search.productFilter.clothingOuterMaterial",
    "search.productFilter.brand"
  ],
  "resultsPerPageOptions": [16, 24, 32],
  "sortOptions": [
    "search.productSortOption.relevance",
    "search.productSortOption.nameAsc",
    "search.productSortOption.nameDesc",
    "search.productSortOption.priceAsc",
    "search.productSortOption.priceDesc"
  ]
}
Parameterbeschreibung
ParameterTypBeschreibung
productFiltersmultiAssocListe der verfügbaren Filter aus search.productFilter (z.B. Preis, Marke, Material). Reihenfolge der Angaben entspricht der Reihenfolge im Frontend.
sortOptionsmultiAssocListe der für den Nutzer wählbaren Sortierungen aus search.productSortOption (z.B. Relevanz, Name oder Preis auf- absteigend).
defaultSortOptionssingleAssocVoreingestellte Sortierung aus search.productSortOption beim ersten Laden einer Kategorieseite. (z.B. nach Relevanz).
resultsPerPageOptionslist (uint)Einstellbare Werte für “Treffer pro Seite”.
Reihenfolge der Angaben entspricht der Reihenfolge im Frontend.
Default: [20, 50, 100, 200]
defaultResultsPerPageuintVoreinstellung der Treffer pro Seite (muss in resultsPerPageOptionsebenfalls angegeben sein).
Default: 20
keepSortSettings
(demnächst verfügbar)
boolBehalte die gewählte Sortierung / Limit pro Nutzer-Session bei.
Default: true

search.productFilter - Produktfilter definieren

Der Knoten search.productFilterdefiniert einzelne Filter für Listing-Seiten (z.B. Marke, Material, Preis, Gewicht). Sie legen fest, welches Datenfeld gefiltert wird, wie der Filter funktioniert und ob es Abhängigkeiten zu anderen Filtern gibt. Beispielkonfiguration (search.productFilter.weight):
{
  "name": "weight",
  "filterDependency": { "filter": null, "options": [] },
  "type": {
    "keyword": { "optionsSort": "numResults", "multiSelect": true },
    "range": null
  },
  "target": {
    "field": "content.customProductField.weight",
    "special": null,
    "attribute": null
  },
  "scoreBoost": 0,
  "optionsDirectlyDisplayable": false,
  "unit": "",
  "numInitialOptions": 0,
  "minOptions": 0
}
Parameterbeschreibung
ParameterTypBeschreibung
namestringTechnischer Name des Filters (z.B. brand, price).
filterDependencyobjectDefiniert die Abhängigkeit zu einem anderen Filter.
filtersingleAssocReferenz auf den Abhängigen Filter aus search.productFilter.
optionslist (string)Erlaubte Optionen des abhängigen Filters, bei deren Auswahl dieser Filter aktiv wird.
Beispiel: Filter “Größe” nur anzeigen, wenn die Kategorie Bekleidung gewählt ist:
{ "name": "size", "filterDependency": { "filter": "search.productFilter.category", "options": ["clothing"] } }
typeoneOfLegt fest, wie der Filter arbeitet.
keywordobjectAuswahlliste mit festen Werten (z.B. Marken, Farben).
optionsSortenumSortierung der Optionswerte.
Mögliche Angaben: lexical- alphabetische Sortierung numResults- Sortierung nach Trefferzahl relevance- Sortierung nach Relevanz
multiSelectboolMehrfachauswahl oder nur eine Option zulassen.
rangeobjectSteuert einen zahlenbasierten Filter (z.B. Preis, Gewicht).
inputTypeenumLegt fest, wie Nutzer den Zahlenbereich des Filters wählen:
rangeonly- Frei einstellbarer Bereich optionsOnly- Nur vorgegebene Stufen zur Auswahl rangeAndOptions- Kombiniert beides.
optionTypeenumBestimmt, woher die Zahlenbereichsstufen kommen:
static- Feste Stufen manuell vorgeben. dynamic- Die Stufen werden automatisch aus vorhandenen Produktwerten berechnet.
dynamicStepsintGibt die Anzahl der dynamischen Stufen an.
(nur, wenn bei optionType der Wert dynamicgewählt wurde.)
statisticOptionslist (object)Liste fester Zahlenbereichsstufen.
fromfloatUntere Grenze der Zahlenbereichsstufe.
tofloatObere Grenze der Zahlenbereichsstufe.
targetoneOfLegt Fest, welches Produktfeld der Filter verwendet. (z.B. ein Produktfeld oder ein Produktattribut)
fieldsingleAssocBindet den Filter an ein Produktfeld (z.B. content.customProductField.weight).
Die Daten kommen aus content.productField | content.customProductField.
specialenumLegt fest, ob nach Kategorie-ID (categories) oder Neuheiten (new) gefiltert wird.
attributesingleAssocBindet den Filter an ein Produktattribut.
Daten aus content.productAttribute.
scoreBoost
(demnächst verfügbar)
floatErhöht den Ranking-Einfluss ausgewählter Filterwerte auf die Ergebnisreihenfolge.
optionsDirectlyDisplayable
(demnächst verfügbar)
booltrue- Optionsliste kann ohne “mehr anzeigen” vollständig gezeigt werden.
false- Optionsliste kann sich einklappen.
unitstringEinheit für die Anzeige (z.B. kg, cm, )
numInitialOptionsuintAnzahl initial sichtbarer Optionswerte (z.B. zeige zuerst 5, der Rest muss aufgeklappt werden).
minOptionsuintMindestanzahl benötigter Optionswerte, damit der Filter überhaupt angezeigt wird.

search.productSearchNavigation - Filter und Sortierung für Suchergebnisseiten

Der Knoten search.productSearchNavigation definiert die Filter und die Sortierung auf Suchergebnisseiten. Einstellbar sind beispielsweise die Standard-Sortierung, die Treffer pro Seite sowie ein Limit für maximale Treffer pro Suche. Beispielkonfiguration
{
  "defaultResultsPerPage": 16,
  "defaultSortOption": "search.productSortOption.relevance",
  "maxResults": 1000,
  "productFilters": [
    "search.productFilter.price",
    "search.productFilter.clothingLength",
    "search.productFilter.clothingOuterMaterial",
    "search.productFilter.brand"
  ],
  "resultsPerPageOptions": [16, 24, 32],
  "sortOptions": [
    "search.productSortOption.relevance",
    "search.productSortOption.nameAsc",
    "search.productSortOption.nameDesc",
    "search.productSortOption.priceAsc",
    "search.productSortOption.priceDesc"
  ]
}
Parameterbeschreibung
ParameterTypBeschreibung
productFiltersmultiAssocVerfügbare Filter für die Suche (z.B. Preis, Marke, Material). Die Reihenfolge entspricht der Anzeige im Frontend.
sortOptionsmultiAssocWählbare Sortierungen für den Nutzer (z.B. Relevanz, Name / Preis auf- bzw. absteigend.)
defaultSortOptionsingleAssocVoreingestellte Sortierung der Suchergebnisse (z.B. Relevanz).
resultsPerPageOptionslist (uint)Auswahlwerte für “Treffer pro Seite”.
Default: [20, 50, 100, 200]
defaultResultsPerPageintVoreinstellung der Treffer pro Seite (muss in resultsPerPageOptions enthalten sein).
maxResultsintMaximalzahl der berücksichtigten / anzeigbaren Treffer einer Suche.

search.productSortOption - Sortierungsmöglichkeit

Der Knoten search.productSortOption definiert eine Sortiermöglichkeit für Kategorie - und Suchergebnisseiten. Er legt beispielsweise fest, wonach sortiert wird und in welcher Richtung. Beispielkonfiguration (search.productSortOption.relevance)
{
  "name": "Beliebtheit",
  "target": {
    "field": null,
    "special": "relevance"
  }
}
Parameterbeschreibung
ParameterTypBeschreibung
namestringAnzeigename der Sortierung im Frontend. (z.B. “Beliebtheit”).
targetoneOfLegt fest, wonach sortiert wird - eine Variante wählbar:
field oder special
fieldobjectSortierung nach einem konkreten Produktfeld.
fieldenumProduktfeld aus content.productField| content.customProductField, nach dem sortiert werden soll. (z.B. Preis)
directionenumSortierrichtung der Sortierung.
asc= aufsteigend
desc= absteigend
specialenumSystemsortierung nach Relevanz (relevance)