Zum Hauptinhalt springen
Mit dem $wsConfig-Modul lesen Sie die Konfigurationsdaten des Shops im Frontend, beispielsweise die verfügbaren Länder, die Währung, die Zahlungs- und Versandarten sowie die konfigurierten Anreden und Titel. Auf dieser Seite geht es um das Lesen der Konfiguration. Die Konfiguration selbst wird im Admin-Interface bzw. per Code gepflegt, nicht über dieses Modul.

Grundkonzept

$wsConfig ist ein reines Lese-Modul. Es spiegelt die im Shop hinterlegte Konfiguration zum Zeitpunkt des Seitenaufbaus wider. Die Werte ändern sich nur, wenn die Konfiguration geändert wird und nicht durch eine Aktion des Kunden. Die Variablen lassen sich wie folgt gruppieren:

Währung formatieren

Der currency-Filter (| currency) gibt einen Betrag bereits mit Währungssymbol aus (z. B. 1.500,00 €). Verwenden Sie currency.symbol deshalb nicht zusätzlich zu | currency – sonst erscheint das Symbol doppelt. currency.symbol brauchen Sie nur, wenn Sie einen Wert selbst formatieren oder das Symbol einzeln anzeigen.

Grundkonzept

$wsConfig ist ein reines Lese-Modul. Es spiegelt die im Shop hinterlegte Konfiguration zum Zeitpunkt des Seitenaufbaus wider. Die Werte ändern sich nur, wenn die Konfiguration geändert wird und nicht durch eine Aktion des Kunden. Die Variablen lassen sich wie folgt gruppieren:

Währung formatieren

Der currency-Filter (| currency) gibt einen Betrag bereits mit Währungssymbol aus (z. B. 1.500,00 €). Verwenden Sie currency.symbol deshalb nicht zusätzlich zu | currency – sonst erscheint das Symbol doppelt. currency.symbol brauchen Sie nur, wenn Sie einen Wert selbst formatieren oder das Symbol einzeln anzeigen.

Modulübersicht

Beispiel / Ausschnitt über $wsConfig
{{= $wsConfig | json }}
JSON-Ausgabe
{
  "countries": [ { "isoAlpha2": "...", "isoAlpha3": "...", "isoNum": "...", "name": "..." } ],
  "currency": { "symbol": "...", "isoCode": "...", "isoNum": "..." },
  "directOrder": { "initialNumber": 0, "maximalNumber": 0, "refreshedNumber": 0, "itemNumberFields": [...] },
  "emails": [...],
  "listElements": { "bill": { }, "delivery": { } },
  "passwordChecks": { "maxLength": { "len": 0 }, "minLength": { "len": 0 } },
  "passwordReset": { "checkLoginID": false, "checkOldPassword": false },
  "payments": [ { "id": "...", "name": "...", "description": "...", "image": "..." } ],
  "redirects": [...],
  "salutation": { "codeList": [ { "code": "...", "text": "..." } ] },
  "shippingMethods": [ { "id": "...", "name": "...", "description": "...", "image": "...", "link": "...", "type": "..." } ],
  "title": { "codeList": [ { "code": "...", "text": "..." } ] }
}
Variablen in der Übersicht
VariableTypBeschreibung
countriesarrayKonfigurierte Länder (Struktur siehe unten).
currencymapWährungsdaten (Symbol, Codes).
salutationmapKonfigurierte Anreden (unter codeList).
titlemapKonfigurierte Titel (unter codeList).
paymentsarrayKonfigurierte Zahlungsarten (Struktur siehe unten).
shippingMethodsarrayKonfigurierte Versandarten (Struktur siehe unten).
listElementsmapAdresstyp-Optionen für Formulare (bill, delivery).
passwordChecksmapPasswort-Längenregeln.
passwordResetmapEinstellungen zum Passwort-Reset.
directOrdermapEinstellungen der Direktbestellung.
emailsarrayE-Mail-Konfigurationen.
redirectsarrayWeiterleitungs-Konfigurationen.
b2bSubAccountsmapB2B-Unterkonten-Einstellungen (subAccountsEnabled, adminCanEditMemberAddresses).
shippingMethodGroupsarrayGruppen von Versandarten (im Test leer).
VariableTypBeschreibung
countriesarrayKonfigurierte Länder (Struktur siehe unten).
currencymapWährungsdaten (Symbol, Codes).
salutationmapKonfigurierte Anreden (unter codeList).
titlemapKonfigurierte Titel (unter codeList).
paymentsarrayKonfigurierte Zahlungsarten (Struktur siehe unten).
shippingMethodsarrayKonfigurierte Versandarten (Struktur siehe unten).
listElementsmapAdresstyp-Optionen für Formulare (bill, delivery).
passwordChecksmapPasswort-Längenregeln.
passwordResetmapEinstellungen zum Passwort-Reset.
directOrdermapEinstellungen der Direktbestellung.
emailsarrayE-Mail-Konfigurationen.
redirectsarrayWeiterleitungs-Konfigurationen.
b2bSubAccountsmapB2B-Unterkonten-Einstellungen (subAccountsEnabled, adminCanEditMemberAddresses).
shippingMethodGroupsarrayGruppen von Versandarten (im Test leer).

Templates

Die Konfigurationsdaten können auf jeder Seite verwendet werden. Typische Einsatzgebiete: Formulare (Länder-, Anredeauswahl), Checkout (Zahlungs- und Versandarten) und Preisanzeige (Währung).

Variablen

$wsConfig.countries

Gibt die konfigurierten Länder aus. Nutzen Sie die Liste, um beispielsweise ein Länder-Auswahlfeld in einem Adressformular zu füllen.
{{ foreach $country in $wsConfig.countries }}
  {{= $country.name }} ({{= $country.isoAlpha2 }})
{{ /foreach }}

Eigenschaften eines Landes

EigenschaftTypBeschreibung
namestringName des Landes.
isoAlpha2stringISO-2-Ländercode (z. B. "DE", "AT").
isoAlpha3stringISO-3-Ländercode (z. B. "DEU", "AUT").
isoNumstringISO-Zifferncode (z. B. "276", "040").

$wsConfig.currency

Gibt die Währungsdaten aus. Für die Anzeige eines Betrags verwenden Sie in der Regel den currency-Filter (siehe Währung formatieren).

Eigenschaften von $wsConfig.currency

EigenschaftTypBeschreibung
symbolstringWährungssymbol (z. B. ).
isoCodestringISO-Währungscode (z. B. "EUR").
isoNumstringISO-Zifferncode der Währung (z. B. "978").
Währung: {{= $wsConfig.currency.isoCode }} ({{= $wsConfig.currency.symbol }})

$wsConfig.salutation

Gibt die konfigurierten Anreden aus. Die eigentliche Liste liegt unter salutation.codeList. Nutzen Sie sie beispielsweise, um ein Anrede-Auswahlfeld zu füllen.
{{ foreach $salutation in $wsConfig.salutation.codeList }}
  {{= $salutation.text }}
{{ /foreach }}

Eigenschaften eines Eintrags in salutation.codeList

EigenschaftTypBeschreibung
codestringAnrede-Code (z. B. "1", "2").
textstringAnzeigetext (z. B. "Herr", "Frau", "Familie", "Firma").

$wsConfig.title

Gibt die konfigurierten Titel aus. Die Liste liegt unter title.codeList. Aufbau analog zu salutation.
{{ foreach $title in $wsConfig.title.codeList }}
  {{= $title.text }}
{{ /foreach }}

Eigenschaften eines Eintrags in title.codeList

EigenschaftTypBeschreibung
codestringTitel-Code (z. B. "1").
textstringAnzeigetext (z. B. "Dr.", "Prof."; kann leer sein).

$wsConfig.payments

Gibt die konfigurierten Zahlungsarten aus. Nutzen Sie sie, um die verfügbaren Zahlungsarten anzuzeigen.
{{ foreach $payment in $wsConfig.payments }}
  {{= $payment.name }}: {{= $payment.description }}
{{ /foreach }}

Eigenschaften einer Zahlungsart

EigenschaftTypBeschreibung
idstringID der Zahlungsart (z. B. "paypalCheckout", "stripe").
namestringName der Zahlungsart.
descriptionstringBeschreibung der Zahlungsart.
imagestringBild-URL der Zahlungsart.
discountfloatRabatt der Zahlungsart.
providerstringAnbieter der Zahlungsart.
typestringTyp der Zahlungsart.
labelsarrayLabels der Zahlungsart.
displayInfoarrayZusätzliche Anzeigeinformationen (siehe Hinweis).
displayInfo ist nur befüllt, wenn für die Zahlungsart der Parameter displayPaymentTypes konfiguriert wurde. Jeder Eintrag enthält name, description und image.
{{ foreach $payment in $wsConfig.payments }}
  {{ foreach $info in $payment.displayInfo }}
    {{= $info.name }} – {{= $info.description }}
  {{ /foreach }}
{{ /foreach }}

$wsConfig.shippingMethods

Gibt die konfigurierten Länder aus. Nutzen Sie die Liste, um beispielsweise ein Länder-Auswahlfeld in einem Adressformular zu füllen.
{{ foreach $country in $wsConfig.countries }}
  {{= $country.name }} ({{= $country.isoAlpha2 }})
{{ /foreach }}

Eigenschaften eines Landes

EigenschaftTypBeschreibung
namestringName des Landes.
isoAlpha2stringISO-2-Ländercode (z. B. "DE", "AT").
isoAlpha3stringISO-3-Ländercode (z. B. "DEU", "AUT").
isoNumstringISO-Zifferncode (z. B. "276", "040").

$wsConfig.currency

Gibt die Währungsdaten aus. Für die Anzeige eines Betrags verwenden Sie in der Regel den currency-Filter (siehe Währung formatieren).

Eigenschaften von $wsConfig.currency

EigenschaftTypBeschreibung
symbolstringWährungssymbol (z. B. ).
isoCodestringISO-Währungscode (z. B. "EUR").
isoNumstringISO-Zifferncode der Währung (z. B. "978").
Währung: {{= $wsConfig.currency.isoCode }} ({{= $wsConfig.currency.symbol }})

$wsConfig.salutation

Gibt die konfigurierten Anreden aus. Die eigentliche Liste liegt unter salutation.codeList. Nutzen Sie sie beispielsweise, um ein Anrede-Auswahlfeld zu füllen.
{{ foreach $salutation in $wsConfig.salutation.codeList }}
  {{= $salutation.text }}
{{ /foreach }}

Eigenschaften eines Eintrags in salutation.codeList

EigenschaftTypBeschreibung
codestringAnrede-Code (z. B. "1", "2").
textstringAnzeigetext (z. B. "Herr", "Frau", "Familie", "Firma").

$wsConfig.title

Gibt die konfigurierten Titel aus. Die Liste liegt unter title.codeList. Aufbau analog zu salutation.
{{ foreach $title in $wsConfig.title.codeList }}
  {{= $title.text }}
{{ /foreach }}

Eigenschaften eines Eintrags in title.codeList

EigenschaftTypBeschreibung
codestringTitel-Code (z. B. "1").
textstringAnzeigetext (z. B. "Dr.", "Prof."; kann leer sein).

$wsConfig.payments

Gibt die konfigurierten Zahlungsarten aus. Nutzen Sie sie, um die verfügbaren Zahlungsarten anzuzeigen.
{{ foreach $payment in $wsConfig.payments }}
  {{= $payment.name }}: {{= $payment.description }}
{{ /foreach }}

Eigenschaften einer Zahlungsart

EigenschaftTypBeschreibung
idstringID der Zahlungsart (z. B. "paypalCheckout", "stripe").
namestringName der Zahlungsart.
descriptionstringBeschreibung der Zahlungsart.
imagestringBild-URL der Zahlungsart.
discountfloatRabatt der Zahlungsart.
providerstringAnbieter der Zahlungsart.
typestringTyp der Zahlungsart.
labelsarrayLabels der Zahlungsart.
displayInfoarrayZusätzliche Anzeigeinformationen (siehe Hinweis).
displayInfo ist nur befüllt, wenn für die Zahlungsart der Parameter displayPaymentTypes konfiguriert wurde. Jeder Eintrag enthält name, description und image.
{{ foreach $payment in $wsConfig.payments }}
  {{ foreach $info in $payment.displayInfo }}
    {{= $info.name }} – {{= $info.description }}
  {{ /foreach }}
{{ /foreach }}

$wsConfig.shippingMethods

Gibt die konfigurierten Versandarten aus.
{{ foreach $shipping in $wsConfig.shippingMethods }}
  {{= $shipping.name }} ({{= $shipping.type }})
{{ /foreach }}

Eigenschaften einer Versandart

EigenschaftTypBeschreibung
idstringID der Versandart (z. B. "dhl").
namestringName der Versandart.
descriptionstringBeschreibung der Versandart.
imagestringBild-URL der Versandart.
linkstringLink zur Versandart (z. B. Tracking-Seite).
typestringTyp der Versandart (z. B. "standard").
groupstringZugeordnete Versandart-Gruppe (kann null sein).
Die Versandkosten sind nicht Teil der Konfiguration. Sie hängen vom Warenkorb ab und werden über $wsCheckout.getShippingCost(shippingMethodId) ermittelt.

$wsConfig.listElements

Gibt die Adresstyp-Optionen für Formulare aus, getrennt nach bill (Rechnungsadresse) und delivery (Lieferadresse), beispielsweise Privat / Firma.
{{ foreach $list in $wsConfig.listElements.bill }}
  <select name="addressType">
    {{ foreach $option in $list.values }}
      <option value="{{= $option.value }}"{{ if $option.value == $list.defaultValue }} selected{{ /if }}>
        {{= $option.name }}
      </option>
    {{ /foreach }}
  </select>
{{ /foreach }}

Eigenschaften eines Eintrags in listElements.bill / .delivery

EigenschaftTypBeschreibung
defaultValuestringVorausgewählter Wert (z. B. "1").
valuesarrayOptionen, je { name, value }

$wsConfig.passwordChecks

Gibt die Längenregeln für Passwörter aus. Nutzen Sie sie beispielsweise, um in einem Registrierungs- oder Passwort-Formular die erlaubte Länge anzuzeigen oder clientseitig zu prüfen.
Passwortlänge: {{= $wsConfig.passwordChecks.minLength.len }} bis {{= $wsConfig.passwordChecks.maxLength.len }} Zeichen

Eigenschaften von $wsConfig.passwordChecks

EigenschaftTypBeschreibung
minLength.lenintMinimale Passwortlänge.
maxLength.lenintMaximale Passwortlänge.

$wsConfig.passwordReset

Gibt die Einstellungen zum Passwort-Reset aus.
{{ if $wsConfig.passwordReset.checkOldPassword }}
  <!-- Altes Passwort beim Zurücksetzen erforderlich -->
{{ /if }}

Eigenschaften von $wsConfig.passwordReset

EigenschaftTypBeschreibung
checkLoginIDboolOb die Login-ID beim Reset geprüft wird.
checkOldPasswordboolOb das alte Passwort beim Reset geprüft wird.

$wsConfig.directOrder

Gibt die Einstellungen der Direktbestellung aus (z. B. wie viele Eingabezeilen angezeigt werden).
Start-Zeilen: {{= $wsConfig.directOrder.initialNumber }}
Max. Zeilen: {{= $wsConfig.directOrder.maximalNumber }}

Eigenschaften von $wsConfig.directOrder

EigenschaftTypBeschreibung
initialNumberintAnzahl der initial angezeigten Zeilen.
maximalNumberintMaximale Anzahl von Zeilen.
refreshedNumberintAnzahl neu geladener Zeilen.
itemNumberFieldsarrayArtikelnummer-Felder der Direktbestellung.

$wsConfig.emails

Gibt die E-Mail-Konfigurationen aus.
{{= $wsConfig.emails | json }}

$wsConfig.redirects

Gibt die Weiterleitungs-Konfigurationen aus.
{{= $wsConfig.redirects | json }}

Methoden

Für $wsConfig stehen keine Methoden zur Verfügung.

Aktionen

Für $wsConfig stehen keine Aktionen zur Verfügung.

Beispiele

Länder-Auswahlfeld

<select name="country">
  {{ foreach $country in $wsConfig.countries }}
    <option value="{{= $country.isoAlpha2 }}">{{= $country.name }}</option>
  {{ /foreach }}
</select>
Ergebnis
Ein Auswahlfeld mit allen konfigurierten Ländern. Der Wert ist der ISO-2-Code.

Anrede-Auswahlfeld

<select name="salutation">
  {{ foreach $salutation in $wsConfig.salutation.codeList }}
    <option value="{{= $salutation.code }}">{{= $salutation.text }}</option>
  {{ /foreach }}
</select>
Ergebnis
Ein Auswahlfeld mit allen konfigurierten Anreden.

Zahlungsarten auflisten

{{ foreach $payment in $wsConfig.payments }}
  <p>{{= $payment.name }} – {{= $payment.description }}</p>
{{ /foreach }}
Ergebnis
Alle konfigurierten Zahlungsarten mit Name und Beschreibung.

Währung korrekt anzeigen

Zwischensumme: {{= $wsBasket.totalGross | currency }}
Ergebnis
Der Betrag wird mit Währungssymbol ausgegeben (z. B. 1.500,00 €).