Installation für Agenturen
Diese Anleitung richtet sich ausschließlich an Agenturen und technische Shop-Administratoren mit Datei-, Composer- und Konsolenzugriff. Die tägliche Konfiguration im OXID-Admin ist unter Bedienung für Shop-Betreiber beschrieben.
Paket
FacetFilter wird vorerst ausschließlich als Twig-Paket für OXID eShop 7 ab Version 7.1 ausgeliefert.
Shop |
Ausgabe |
Ziel |
|---|---|---|
OXID eShop 7 ab 7.1 |
Twig |
|
Warnung
Sichern Sie vor Installation und Update mindestens die Projekt-composer.json, die
OXID-Konfiguration und den vorhandenen Modulordner.
Voraussetzungen
Prüfen Sie vor dem Kopieren des Moduls:
Ein aktives Twig-Storefront-Theme für OXID 7, üblicherweise Apex.
PHP entsprechend der eingesetzten OXID-Version. Das Paket verlangt mindestens PHP 8.1; OXID 7.5 benötigt beispielsweise PHP 8.3.
Kategorielisten mit Artikeln. Preis, Hersteller, Varianten und Verfügbarkeit benötigen keine Dummy-Attribute.
Attributfilter erscheinen nur, wenn Attribute der jeweiligen Kategorie zugeordnet sind.
Achtung
FacetFilter verändert keine Artikel-, Attribut- oder Preisdaten. Es liest vorhandene Shopdaten und speichert gewählte Filter nur in der Sitzung sowie in der Listen-URL.
Installation
1. Moduldateien kopieren
Kopieren Sie das vollständige Twig-Paket nach:
vendor/ecs/facetfilter
Prüfen Sie danach insbesondere metadata.php, composer.json,
services.yaml, assets, src, translations und views.
2. Namespace in der Projekt-composer.json registrieren
Ergänzen Sie in der composer.json des Shop-Hauptverzeichnisses unter
autoload / psr-4:
"Ecs\\FacetFilter\\": "vendor/ecs/facetfilter/src/"
Vollständiges Beispiel mit einem vorhandenen Namespace:
{
"autoload": {
"psr-4": {
"Vorhandener\\Namespace\\": "vendor/vorhandener/anbieter/modul/src/",
"Ecs\\FacetFilter\\": "vendor/ecs/facetfilter/src/"
}
}
}
Der Eintrag gehört in die Projekt-composer.json, nicht in die Datei des
Moduls. Vorhandene Namespaces bleiben erhalten. Ein zusätzlicher Eintrag unter
require ist bei dieser manuellen Installation nicht notwendig.
3. Autoloader und Modul installieren
Führen Sie im Shop-Hauptverzeichnis aus:
composer dump-autoload
vendor/bin/oe-console oe:module:install vendor/ecs/facetfilter
vendor/bin/oe-console oe:module:activate ecs_facetfilter
vendor/bin/oe-console oe:cache:clear
Alternativ kann die Aktivierung nach oe:module:install im Admin unter
erfolgen.
4. Installation kontrollieren
Prüfen Sie mindestens:
Das Modul ist sichtbar und aktiv; alle Einstellungsgruppen sind vorhanden.
Der Apex-Dropdown-Attributfilter auf der Kategorieliste ist verschwunden.
Desktop zeigt die Filter-Sidebar links neben der Artikelliste.
Mobil öffnet der Button Filter denselben Filter in einem Drawer.
Eine Kategorie ohne Attribute zeigt trotzdem Preis, Lager und vorhandene Hersteller- oder Variantenwerte.
Eine Kategorie mit zugeordneten Attributen zeigt zusätzlich diese Facetten.
Ajax-Klicks aktualisieren Liste und Zähler; ein harter Reload der URL liefert dasselbe Ergebnis.
Der Shopcache wurde geleert.
Datenbankänderung und Aktivierungsereignisse
FacetFilter legt keine Tabellen oder Felder an. Bei Aktivierung und Deaktivierung leert es nur das konfigurierte OXID-Compile-Verzeichnis. Die OXID-Views bleiben unverändert.
Gewählte Filter liegen in der Sitzung unter ecs_facetfilter und
zusätzlich in der Listen-URL. Eine Deaktivierung löscht weder Artikel- noch
Attributdaten.
Modul aktualisieren
Deaktivieren Sie das Modul für den Dateiaustausch. Ersetzen Sie den
vollständigen Ordner vendor/ecs/facetfilter durch das aktuelle Paket.
Führen Sie danach aus:
composer dump-autoload
vendor/bin/oe-console oe:module:install vendor/ecs/facetfilter
vendor/bin/oe-console oe:module:activate ecs_facetfilter
vendor/bin/oe-console oe:cache:clear
Nach jedem Update
Kontrollieren Sie alle Einstellungsgruppen; vorhandene Betreiberwerte werden nicht automatisch überschrieben.
Prüfen Sie Sidebar, Mobil-Drawer, Ajax und harten Reload.
Testen Sie eine Kategorie mit und eine ohne Attribute.
Datenaufbewahrung bei Deaktivierung
onDeactivate löscht keine Shopdaten. Sitzungswerte entfallen mit dem Ende
der jeweiligen Kundensitzung. Moduleinstellungen bleiben in OXID gespeichert,
bis sie mit den vorgesehenen Modulwerkzeugen entfernt werden.
Technische Abnahme
Öffnen Sie eine Kategorie mit Attributen und eine ohne Attribute.
Prüfen Sie Mehrfachauswahl, Preis-Slider, Hersteller und Verfügbarkeit.
Prüfen Sie Zähler, einzelne Chips und Alle Filter zurücksetzen.
Wechseln Sie Sortierung, Artikel pro Seite und Seitenblätterung bei aktivem Filter.
Prüfen Sie Desktop-Sidebar und Mobil-Drawer.
Rufen Sie eine gefilterte URL in einem neuen Browserfenster auf.
Kontrollieren Sie, dass Suchergebnisse und Herstellerlisten unverändert bleiben.
Technische Fehlerbehebung
Apex-Dropdown ist noch sichtbar
Leeren Sie den Template-Cache und prüfen Sie, ob das Modul-Override für
widget/locator/attributes geladen wird. Ein Child-Theme mit eigener
Kopie dieses Templates kann das Override verhindern.
Ajax lädt die ganze Seite neu
Das ist der vorgesehene Fallback, wenn JavaScript fehlschlägt. Prüfen Sie die
Browserkonsole und ob assets/js/facetfilter.js ausgeliefert wird.
Übergabe an den Shop-Betreiber
Übergeben Sie mindestens:
die eingeschalteten Filtergruppen,
die gewünschten Preisstufen,
den Hinweis, dass Attribute weiterhin im OXID-Admin gepflegt werden,
den Link zur Bedienung für Shop-Betreiber.