hkn11
13. April 2023 um 17:34
1
Hallo
ich versuche im Listing (im action Button) abzufragen, ob das Produkt eine bestimmte Eigenschaftsausprägung hat, um dann den buy button umzubennen.
Kongreter Soll Die Eigenschaftsgruppe „SET“ die Ausprägung „JA“ haben.
Irgendwie komme ich aber nicht recht weiter, mein Ansatz bisher:
{% for properties in product.properties %}
{% if product.properties.group.name == „Set“ %}
{% set setproperty = product.properties.name %}
{% endif %}
{% endfor %}
und dann in die If Abfrage…
Nah dran, versuch mal group.translated.name
Im Standard-Theme werden für die Properties page.product.sortedProperties
verwendet.
hkn11
13. April 2023 um 18:04
3
das klingt schonmal besser! Danke
Könnte ich dann per if abfragen ob setproperty == „Ja“ ?
Eigentlich muss man nicht auf strings zurückgreifen, wenn lediglich der Wahrheitswert gebraucht wird.
Nutze doch beim if
in der group-Schleife {% set isSetProduct = true %}
und dann am Buy-Button:
{% if isSetProduct|default(false) %}
...neuer Buttontext...
{% else %}
...alter Buttontext..
{% endif %}
hkn11
13. April 2023 um 19:30
5
Die Eigenschaft ist manuel gesetzt, da es sich um ein Konfiguratorprodukt durch ein spezielles Plugin handelt. Aber ich sehe grade dass man im Listing gar nicht auf die Eigenschaften Arrays zurückgreifen kann sondern nur auf der Detailseite. (Die For Schleife ist immer leer).