For the complete documentation index, see llms.txt. This page is also available as Markdown.

Formeln

Formeln sind das mächtigste Werkzeug des Konfigurators. Mit ihnen berechnest du Preise, Maße, Gewicht, eine Artikelnummer oder Anzeigewerte dynamisch aus den Eingaben deiner Kunden – etwa „Preis = Fläche × Quadratmeterpreis" oder „ab 100 Stück 10 % Rabatt".

Dieses Kapitel erklärt Formeln von Grund auf. Du brauchst keine Programmierkenntnisse – nur ein wenig logisches Denken. Alle Beispiele kannst du direkt übernehmen.

Premium-Funktion: Die „Kalkulation für Experten" (alle Formel-Eingaben) ist Teil der Premium-Version. In anderen Versionen sind die Formelfelder sichtbar, aber deaktiviert – siehe Versionen.

Was ist eine Formel?

Eine Formel ist ein kleiner Rechenausdruck, der ein Ergebnis liefert. Im einfachsten Fall ist das reine Mathematik:

price + 10

Diese Formel bedeutet: nimm den Produktpreis und addiere 10. Anstelle fester Zahlen kannst du Variablen verwenden – Platzhalter, die zur Laufzeit mit den echten Werten der Kundeneingaben gefüllt werden.

Technischer Hintergrund: Formeln nutzen die Template-Sprache Twig in einer abgesicherten Umgebung. Es sind nur die hier dokumentierten Variablen, Funktionen und Filter erlaubt – das hält Formeln sicher.

Wo gebe ich Formeln ein?

Es gibt zwei Orte:

1. Konfigurator-Berechnungen (Reiter Berechnung des Konfigurators). Jede Berechnung hat einen Schalter und ein Formelfeld:

Berechnung
Ergebnis
Variablen-Typ

Preis

Endgültiger Stückpreis

Zahl

Breite / Höhe / Länge / Gewicht

Neuer Maß-/Gewichtswert

Zahl

Artikelnummer

Generierte Artikelnummer

Text

2. Feld-Berechnungen (Reiter Berechnung eines einzelnen Feldes):

Berechnung
Ergebnis
Variablen-Typ

Standardwert

Vorbelegung des Feldes

Zahl/Text

Ergebnis-Formel (nur Feldtyp Zwischenergebnis)

Live angezeigter Wert

Text

Verfügbare Variablen

In jeder Formel stehen dir diese Variablen zur Verfügung:

Variable
Bedeutung

price

Basis-Stückpreis des Produkts

width, height, length, weight

Maße und Gewicht des Produkts

fields.<bezeichner>

Der aktuelle Wert eines Feldes, z. B. fields.menge

options.<bezeichner>.price

Aufpreis der gewählten Option dieses Feldes

options.<bezeichner>.width

Breite der gewählten Option (analog height, length, weight)

options.<bezeichner>.value

Technischer Wert der gewählten Option

  • <bezeichner> ist der technische Bezeichner des Feldes (siehe Elemente und Feld Typen).

  • Bei Mehrfachauswahl bezieht sich options.<bezeichner> auf die erste gewählte Option.

  • Felder ohne Eingabe liefern einen leeren Wert – nutze dafür den Filter default (siehe unten).

Rechnen: Operatoren

Operator
Bedeutung
Beispiel

+ - * /

Grundrechenarten

price * 2

%

Rest (Modulo)

fields.menge % 2

**

Potenz

width ** 2

~

Texte verketten

'NR-' ~ fields.farbe

== != > < >= <=

Vergleiche

fields.menge >= 100

and or not

Logische Verknüpfung

width > 0 and height > 0

Funktionen & Filter

Funktionen (Aufruf mit Klammern):

Funktion
Bedeutung
Beispiel

max(a, b, …)

größter Wert

max(price, 25)

min(a, b, …)

kleinster Wert

min(price, 500)

round(wert, stellen)

runden

round(price, 2)

Filter (angewendet mit |):

Filter
Bedeutung
Beispiel

round

runden

price|round(2)

ceil

aufrunden

(price)|ceil

floor

abrunden

(price)|floor

abs

Betrag (positiver Wert)

price|abs

number_format

formatieren

price|number_format(2)

default

Ersatzwert bei leer

fields.menge|default(1)

length

Anzahl/Länge

fields.zeilen|length

abs, ceil und floor gibt es nur als Filter (wert|abs), nicht als Funktion.

Bedingungen und Zwischenvariablen

Du kannst Fallunterscheidungen und eigene Zwischenwerte nutzen:

Erlaubt sind die Blöcke {% if %}, {% elseif %}, {% else %}, {% set %} und {% for %}.

Wichtig: So wirkt die Preis-Formel

Die Preis-Formel ersetzt den kompletten Stückpreis – sie ist kein Aufschlag.

  • Ist die Preis-Berechnung aktiv, bestimmt allein die Formel den Preis. Options-Aufpreise werden nicht automatisch addiert – wenn du sie brauchst, nimm sie über options.<bezeichner>.price in die Formel auf.

  • Ist die Preis-Berechnung aus, gilt: Produktpreis + Summe der gewählten Options-Aufpreise.

Mehr zum Zusammenspiel mit Warenkorb und Anzeige unter Preis und Warenkorb.

Beispiele

Fester Aufschlag

Aufpreis einer Option einbeziehen

Flächenpreis (Breite × Höhe)

Maße aus Kundeneingaben in Zentimetern, Preis pro Quadratmeter = 40 €:

Mengenstaffel (Rabatt ab Stückzahl)

Mindestpreis sicherstellen

Preis pro Stück × Menge

Aufpreis nach Materialwahl

Sauber auf zwei Nachkommastellen runden

Maß berechnen (Breiten-Formel)

Endbreite = Grundbreite + Zuschlag aus Eingabe:

Gewicht berechnen (Gewicht-Formel)

Artikelnummer generieren (Text-Formel)

Ergebnis z. B.: SCHILD-gold-30x20

Zwischenergebnis anzeigen (Ergebnis-Formel)

Für ein Feld vom Typ Zwischenergebnis:

Zeigt dem Kunden live z. B.: Fläche: 0,06 m²

Standardwert vorbelegen (Standardwert-Formel)

Prüfen & Fehlerverhalten

  • Formel prüfen: Beim Bearbeiten kannst du eine Formel direkt im Backend auf gültige Syntax prüfen lassen. Unbekannte Variablen oder nicht erlaubte Konstrukte werden gemeldet.

  • Robustheit im Shop: Führt eine Formel zur Laufzeit nicht zu einem sinnvollen Ergebnis (z. B. wegen einer Division durch Null), fällt der Konfigurator automatisch auf den Basiswert zurück (Basispreis bzw. Grundmaß). Dein Shop zeigt also nie einen Fehler an, sondern im Zweifel den unveränderten Preis.

Tipps & Stolperfallen

  • Texte verketten mit ~, rechnen mit + - * /. 'A' + 'B' funktioniert nicht wie erwartet.

  • Dezimalpunkt verwenden: 0.5, nicht 0,5.

  • Leere Felder absichern: fields.menge|default(1) verhindert Rechnen mit einem leeren Wert.

  • Einheiten beachten: Rechne Längen bewusst um (z. B. cm → m² durch Teilen durch 10000), damit dein Quadratmeterpreis stimmt.

  • abs, ceil, floor nur als Filter schreiben: wert|ceil.

  • Klein anfangen: Teste eine einfache Formel, prüfe das Ergebnis im Shop, und erweitere sie dann Schritt für Schritt.

Zuletzt aktualisiert

War das hilfreich?