Zum Inhalt springen

Regeln und Bedingungen

Das Plugin verwendet den Regel-Builder von Shopware für das Matching wieder. Es gibt keine separate UI — jede Regel unter Einstellungen → Regeln ist ein Kandidat. Sie hängen Regeln einem Layout unter Erlebniswelten → Layout öffnen → Layout-Zuweisung → Tab Regeln an, und zur Request-Zeit wertet das Plugin sie gegen die aktuelle Seite aus.

Nur unterstützte Bedingungen werden ausgewertet. Das Plugin bringt eine kuratierte Liste mit — Shopware enthält außerdem viele Bedingungen, die für den Warenkorb-/Bestell-Kontext gedacht sind (Warenkorbsumme, Artikel im Warenkorb, Versandkosten), die beim Auswählen eines Layouts für eine noch nicht aufgebaute Seite keinen Sinn ergeben. Diese werden stillschweigend ignoriert. Das Layout-Zuweisungsmodal zeigt pro Regel ein Status-Badge:

  • Alle in dieser Regel definierten Bedingungen werden unterstützt ✓ — die Regel wertet genau so aus, wie Sie sie geschrieben haben.
  • Nicht alle in dieser Regel definierten Bedingungen werden unterstützt ⚠ — unterstützte Bedingungen werden ausgewertet, nicht unterstützte übersprungen.
  • Diese Regel enthält keine unterstützten Bedingungen und wird ignoriert ✗ — die Regel kann nicht passen. Das Plugin wird dieses Layout nicht auswählen.
  • Verkaufskanal — die in diesem Plugin meistgenutzte Bedingung. Wählt den aktiven Verkaufskanal.
  • Datumsbereich — beschränkt das Layout auf ein [von, bis]-Fenster. Toll für saisonale Startseiten.
  • Wochentag — Montags-Flash-Sale-Layout, Wochenend-Startseite etc.
  • Zeitbereich — Happy-Hour-Layouts.
  • Sprache — Auswahl nach Storefront-Sprache.
  • Währung — Auswahl nach Storefront-Währung (oft Stellvertreter für Land).
  • Immer gültig — Platzhalter, nützlich beim Prototyping.
  • Ist Startseite [P2Lab Layout Zuweiser] — wahr nur, wenn der Request auf die Stammnavigation des Verkaufskanals auflöst. Siehe Eigene Regelbedingungen.
  • Element in Kategorie [P2Lab Layout Zuweiser] — wahr, wenn das betrachtete Produkt oder die Kategorie eine der aufgelisteten Kategorien ist (oder sich darin befindet).
  • Element in Kategorie mit Unterkategorien [P2Lab Layout Zuweiser] — wie oben, matcht aber auch nachgeordnete Kategorien.

Das Plugin unterstützt die meisten kundenbezogenen Bedingungen: Kundengruppe, Login-Status, Adressfelder, Tags, Alter, Custom Fields, Bestellanzahl, Tage seit letzter Bestellung und mehr. Siehe Eigene Regelbedingungen für die vollständige Liste.

Diese Bedingungen matchen nur sinnvoll, wenn ein Kunde eingeloggt ist. Für anonyme Besucher ist der geprüfte Wert in der Regel null, und die Bedingung gibt false (oder true, je nach Operator) zurück.

Standard-Shopware-Container: UND-Container, ODER-Container, Alle-Positionen-Container. UND-Container erfordern, dass alle Kindbedingungen passen. ODER-Container erfordern mindestens eine. Alle-Positionen-Container ist speziell — siehe Eigene Regelbedingungen für die Besonderheit.

Wenn Sie einem Layout mehrere Regeln anhängen, werden sie mit UND verknüpft: das Layout ist nur dann ein Kandidat, wenn alle seine Regeln passen. Innerhalb einer einzelnen Regel gilt die Standard-Container-Logik (UND-Container mit UND, ODER-Container mit ODER).

Typische Muster:

  • Eine Regel pro Layout — für die Lesbarkeit eine Regel pro Layout halten. Mehrere Bedingungen dieser Regel über UND-/ODER-Container hinzufügen.
  • Mehrere Regeln pro Layout — nützlich, wenn Sie zwei bereits anderweitig wiederverwendete Regeln mit UND verknüpfen möchten (z. B. “Verkaufskanal B” UND “B2B-Kundengruppe”). Sie müssen die Bedingungen nicht klonen.

Wenn mehrere Layouts auf einen einzelnen Request passen könnten, wählt das Plugin die erste Übereinstimmung beim Durchlaufen der Layouts nach rule.priority (niedrigste zuerst). Setzen Sie die Priorität Ihrer Regeln unter Einstellungen → Regeln → Regel bearbeiten → Priorität, wenn Sie einen Tiebreaker brauchen.

Der Matcher geht Layouts in Seiten von 100 durch und stoppt beim ersten Treffer — siehe Performance für das harte Limit der pro Request ausgewerteten Kandidatlayouts.

  • Kombination von Ist Startseite mit Verkaufskanal in einem UND-Container. Dies passt nur auf der Startseite des Kanals — Listings und andere Kategorienseiten matchen nicht. Entweder in zwei Regeln aufteilen oder Ist Startseite weglassen. Siehe den Fallstrick im Mehrere-Verkaufskanäle-Rezept.
  • Vergessen, der Kategorie ein Basislayout zuzuweisen. Das Plugin ersetzt eine Basis — es erstellt keine. Siehe Funktionsweise.
  • Leere Ersetzungstypen für die relevante Seitenart. Das Plugin sucht überhaupt keine Alternativen. Siehe Ersetzungstypen.
  • Regel mit nur Immer gültig — ja, das passt überall. Es ersetzt jede Seite des richtigen Typs. Verwenden Sie Verkaufskanal-Scoping, um sie einzugrenzen.