Hey Stefan! @sonic55
Dein Bild hat mir weiter geholfen und es ist immer eine gute Idee Fragen samt Screenshots, Links zu Beispiele, sowie andere Angaben zur Arbeitsumgebung, wie das Theme usw. zu posten, denn deine erste Frage hatte mich auf den falschen Pfad geleitet, und darum die weiteren Fragen.
Das sind die Produkte Tags oder Werte, sprich, die sogenannte “Facets”, nicht die Filtergruppen, und die werden in der Search & Discovery App immer in alphabetischer oder numerischer Reihenfolge angezeigt. Hier eine ähnlicher Thread zum Thema wie man bestimmte Facets ausschließen kann. Allerdings bietet Liquid selbst keine direkte Methode, um Elemente basierend auf ihren Attributen neu zu ordnen. Stattdessen kann man eine vordefinierte Reihenfolge im Liquid-Code festlegen und dann CSS verwenden, um diese Elemente entsprechend anzuzeigen.
Andere Apps wie AI Search & Product Filter können das ggf. besser aber auf deren Demo Seite hier sehe ich dass die Tags auch alle in alphabetischer Reihenfolge sind. Um mehr Kontrolle über deren Reihenfolge zu haben müsstest du sie umbenennen. Beispiel: “Die Breite” und “Das Standard” - dann würde “Das Standard” sich vor “Die Breite” in der Reihenfolge positionieren.
ODER Metafields verwenden:
Um deine eigene benutzerdefinierte Sortierreihenfolge für Filterwerte festzulegen, erstelle ein Metafeld mit einzeiligem Text mit einer voreingestellten Auswahl. Die ausgewählte Reihenfolge im Adminbereich bestimmt die Sortierreihenfolge des Filterwerts auf der Storefront. Im untenstehenden Beispiel können die Werte für das Metafeld “Fähigkeitslevel” manuell nach “Anfänger”, “Fortgeschrittener Anfänger” und “Professioneller” sortiert werden.
Aus meinem Test Dawn Theme genommen:
Um die Reihenfolge der Facets in der Shopify Search & Discovery-App anzupassen, sodass “Nicht vorrätig” über “Auf Lager” angezeigt wird, ein Einzeiliges Text-Metafeld mit voreingestellten Auswahlmöglichkeiten verwenden. Da Shopify standardmäßig Filterwerte entweder alphabetisch oder numerisch sortiert, können wir diesen Ansatz für andere Filter mithilfe von Metafeldern nachahmen:
-
Erstelle ein Metafeld für die Filtersortierung:
- Gehe in den Shopify-Adminbereich zu “Einstellungen” > “Metafelder”.
- Wähle “Produkte” (oder den relevanten Abschnitt, auf den man die Filtersortierung anwenden möchte).
- Klicke auf “Definition hinzufügen” und erstelle ein neues Einzeiliges Text-Metafeld. Benenne es beispielsweise “Benutzerdefinierte Filtersortierung”.
- Im Abschnitt “Validierung” wähle “Nur bestimmte Werte akzeptieren” und füge die benutzerdefinierte Sortierreihenfolge hinzu. Ich gebe in meinem Beispiel “Nicht vorrätig” als erste Option und “Auf Lager” als zweite Option ein. Das bestimmt ihre Anzeigereihenfolge im Storefront.
-
Weise Produkten Metafeldwerte zu:
- Für jedes Produkt sollte man den entsprechenden Wert basierend auf seiner Verfügbarkeit zuweisen. Das bedeutet, “Nicht vorrätig” für Produkte, die nicht auf Lager sind, und “Auf Lager” für verfügbare Produkte.
- Navigiere zu jedem Produkt im Shopify-Adminbereich und fülle das Metafeld “Benutzerdefinierte Filtersortierung” mit dem korrekten Wert gemäß dem Lagerstatus des Produkts aus.
-
Nur falls dein Theme die Metafelder nicht standardmäßig anzeigt - passe das Theme an, um die benutzerdefinierte Sortierreihenfolge für Filter zu verwenden:
- Dieser Schritt erfordert eine Anpassung des Codes des Themes, um das “Benutzerdefinierte Filtersortierung”-Metafeld für die Sortierung der Filterwerte zu nutzen.
- Suche die Datei im Theme, die die Anzeige der Filteroptionen steuert, möglicherweise in Abschnitten wie
snippets/facets.liquid oder einer ähnlichen Datei.
- Aktualisiere die Sortierlogik, sodass die Anzeige der Filter basierend auf dem Wert des “Benutzerdefinierte Filtersortierung”-Metafelds anstelle der standardmäßigen alphabetischen oder numerischen Reihenfolge priorisiert wird.
Hier ist ein einfaches Beispiel dafür, wie die Codeanpassung aussehen könnte:
{% assign filters = filters | sort: 'metafields.namespace.Benutzerdefinierte Filtersortierung' %}
Ersetze namespace durch den Namespace des Metafelds. Die genaue Implementierung hängt davon ab, wie die Filter im Theme eingerichtet sind, wie mit der S&D App.
Beachte, dass dieser Ansatz manuelle Updates der Produktmetafelder basierend auf Änderungen der Produkte Tags erfordert, es sei denn, dies wird über eine App oder die Shopify-API automatisiert.
Hoffe das hilft dir weiter - lass wissen falls nicht! 