Startseite > Template- und Themeprogrammierung > Shop-Objekte > available_option

available_option

Das <liquid>available_option</liquid> Objekt enthält Informationen über die Ausprägungen einer Varianten-Option eines Produktes. Besitzt ein Produkt z.B. die Varianten-Option "Farbe", so lässt ich über das <liquid>available_option</liquid> Objekt abfragen, welche Farb-Varianten zur Verfügung stehen. Es findet in <obj>product.available_options</obj> Anwendung. 

Attribute

Die nachfolgenden Attribute stehen im <liquid>available_option</liquid> Objekt zur Verfügung.

available_option.key

Gibt den Attribute-Namen für die Varianten-Option zurück, auf die sich der Eintrag bezieht. Mögliche Werte sind <liquid>option1</liquid>, <liquid>option2</liquid> und <liquid>option3</liquid>. So lässt sich z.B. über <obj>variant.option1</obj> Wert für die Varianten-Option 1 einer Variante auslesen.

available_option.origin

Gibt den ursprünglichen Attribut-Namen für <obj>available_option.key</obj> zurück. Dieser kann verwendet werden um die passende Beschriftung über die Label-Filter anzudrucken.

available_option.values

Gibt eine Liste mit allen verfügbaren Ausprägungen der Varianten-Option zurück. Diese wird anhand der Produkt-Varianten ermittelt. Die verfügbaren Attribute innerhalb der Liste sind nachfolgend im Schema von available_option.values[n] dokumentiert.

<liquid-input>
{% for value in available_option.values %}
  {{ value.name }}
{% endfor %}
</liquid-input>
<liquid-output>
red
yellow
blue
</liquid-output>

available_option.values[n].id

Gibt eine eindeutige numerische ID der Ausprägung der Varianten-Option zurück. Dieses Attribut ist nur belegt, wenn es sich bei <obj>available_option.origin</obj> um ein Enumerator-Feld handelt. In diesem Fall enthält das Attribut den Wert <obj>enum.id</obj>

available_option.values[n].value

Gibt den sprachneutralen Wert der Ausprägung der Varianten-Option zurück. Falls es sich bei <obj>available_option.origin</obj> um ein Enumeratoren-Feld handelt, so enthält dieses Feld den Wert aus <obj>enum.value</obj>

available_option.values[n].name

Gibt den Namen der Ausprägung der Varianten-Option zurück. Falls es sich bei <obj>available_option.origin</obj> um ein Enumeratoren-Feld handelt, so enthält dieses Feld den Wert aus <obj>enum.name</obj>. Ansonsten ist dieses Attribute mit <obj>available_option.value</obj> identisch.

available_option.values[n].src

Gibt den URL-Pfad für ein Icon der Ausprägung der Varianten-Option zurück. Dieses Attribute ist nur belegt, falls es sich bei <obj>available_option.origin</obj> um ein Enumeratoren-Feld handelt. In diesem Fall enthält das Attribut den Wert aus <obj>enum.src</obj>.

available_option.values[n]._string1

Gibt das frei belegbare Textfeld 1 der Ausprägung der Varianten-Option zurück. Dieses Attribute ist nur belegt, falls es sich bei <obj>available_option.origin</obj> um ein Enumeratoren-Feld handelt. In diesem Fall enthält das Attribut den Wert aus <obj>enum._string1</obj>.

available_option.values[n]._string2

Gibt das frei belegbare Textfeld 2 der Ausprägung der Varianten-Option zurück. Dieses Attribute ist nur belegt, falls es sich bei <obj>available_option.origin</obj> um ein Enumeratoren-Feld handelt. In diesem Fall enthält das Attribut den Wert aus <obj>enum._string2</obj>.

available_option.values[n]._integer1

Gibt das frei belegbare Ganzzahlfeld 1 der Ausprägung der Varianten-Option zurück. Dieses Attribute ist nur belegt, falls es sich bei <obj>available_option.origin</obj> um ein Enumeratoren-Feld handelt. In diesem Fall enthält das Attribut den Wert aus <obj>enum._integer1</obj>.

available_option.values[n]._integer2

Gibt das frei belegbare Ganzzahlfeld 2 der Ausprägung der Varianten-Option zurück. Dieses Attribute ist nur belegt, falls es sich bei <obj>available_option.origin</obj> um ein Enumeratoren-Feld handelt. In diesem Fall enthält das Attribut den Wert aus <obj>enum._integer2</obj>.

Beispiel

Nachfolgend sehen Sie beispielhaft einen Ausschnitt aus dem <obj>available_option</obj> Objekt.

{
  "key": "option1"
  "origin": "color_enum",
  "values": [
    {
      "id": 101,
      "value": "#FF0000",
      "name": "red",
      "src": "red.png"
    },
      "id": 102.
      "value": "#0000FF",
      "name": "blue",
      "src": "blue.png",
      "_string1": "example text 1"
      "_string2": "example text 2"
      "_integer1": 42
      "_integer1": 43
  ]
}