Gewichtsfilter per URL-Parameter
Das Plugin Gewichtsfilter per URL-Parameter ermöglicht die Filterung von Produktlisten nach Gewicht über URL-Parameter. Kunden und externe Systeme können Produktlisten durch Übergabe von min-weight und max-weight direkt in der URL auf einen bestimmten Gewichtsbereich einschränken. Das Plugin ist nach der Aktivierung sofort einsatzbereit und benötigt keine weitere Konfiguration.
Funktionsweise
Das Plugin registriert einen Event Subscriber auf den ProductListingCriteriaEvent. Bei jedem Aufruf einer Produktliste prüft der Handler die eingehenden URL-Parameter. Sind min-weight oder max-weight gesetzt, wird ein RangeFilter auf das Feld product.weight zur Listing-Criteria hinzugefügt. Die Filterung erfolgt serverseitig vor der Datenbankabfrage.
| URL-Parameter | Beschreibung |
|---|---|
min-weight | Mindestgewicht in Kilogramm (einschließlich) |
max-weight | Maximalgewicht in Kilogramm (einschließlich) |
Beide Parameter können unabhängig voneinander oder kombiniert verwendet werden. Ist nur max-weight gesetzt, wird der Mindestwert automatisch auf 0 gesetzt.
Installation
Voraussetzungen:
- Shopware 6.5 oder höher
- Composer
Installation per Composer:
composer require jjideenschmiede/shopware6-weight-filter-plugin
Anschließend das Plugin im Shopware Admin unter Einstellungen → System → Plugins aktivieren.
Verwendung
Die Filterung erfolgt ausschließlich über URL-Parameter an Produktlisting-URLs. Es sind keine Änderungen im Shopware Admin oder am Theme notwendig.
Nur Minimalgewicht:
/kategorie?min-weight=2.5
Zeigt alle Produkte mit einem Gewicht von mindestens 2,5 kg.
Nur Maximalgewicht:
/kategorie?max-weight=10
Zeigt alle Produkte mit einem Gewicht von höchstens 10 kg.
Gewichtsbereich:
/kategorie?min-weight=2&max-weight=10
Zeigt alle Produkte mit einem Gewicht zwischen 2 kg und 10 kg.