FROM CACHE - de_header
Gelöst

Unterschiedliche Standard-Produktvarianten basierend anderen Varianten

Doganddress
Besucher
2 0 0

Hallo liebe Shopify Community,

 

Ich verkaufe Hundegeschirr + Leinen Sets. Die Geschirre gibt es in 4 Größen (S, M, L & XL) und die Leinen in zwei Größen (1.5cm Breite & 2.5cm Breite). Bisher habe ich für Größe S & M die kleinen und für L & XL die großen Leinen verwendet.

 

Nun möchte dem Kunden gerne die Auswahl der Leine selbst überlassen. Hierfür kann ich die Varianten-Option "Stil" verwenden. Ich möchte allerdings, dass für die Größe S & M standardmäßig der Stil 1.5cm Leine und für Größe L & XL standardmäßig der Stil 2.5cm Leine vorausgewählt wird. Ist dies bei Shopify möglich?

 

Vielen Dank im Voraus

 

Viele Grüße

Philipp

1 AKZEPTIERTE LÖSUNG

Gabe
Shopify Staff
17365 2750 4056

Erfolg.

@Doganddress 

 

Gerne und schauen wir uns an was es für eine Anpassung verlangen würde. Wenn du es selber auf deiner Produktseite programmieren möchtest dann bitte immer in einer Themekopie/Testumgebung zuerst testen und zusammen mit einem Experten/Programmierer. 

Änderungen zu deinem Theme Code können auch 1) die Page Loading Speeds negative beeinflussen und 2) dein Theme aus den Theme Updates ausschließen. Das folgende ist Theme-abhängig, ohne Gewähr und dient lediglich dazu dich in die richtige Richtung zu weisen.

 

Man könnte beispielsweise im product.liquid oder product-template.liquid im Ordner "Sections" oder "Templates" den Bereich, in dem die Varianten-Auswahl angezeigt wird suchen je nach Theme. Die Stelle könnte etwas Ähnliches wie {% for option in product.options_with_values %} enthalten. Dann müsste man den vorhandenen Varianten-Code durch die folgenden For-Loop und IF-Statement im Code ersetzen oder ergänzen (wie gesagt, bitte zusammen mit einem Liquid und Shopify Experten):

 

{% for option in product.options_with_values %}
 {% if option.name == "Stil" %}
   <label>{{ option.name | escape }}</label>
   <select id="{{ option.name | handle }}" name="options[{{ option.name | escape }}]">
   {% for value in option.values %}
     {% assign selected = false %}
     {% if product.selected_or_first_available_variant.title contains value %}
       {% if value == "1.5cm" and product.selected_or_first_available_variant.title contains "S" or product.selected_or_first_available_variant.title contains "M" %}
         {% assign selected = true %}
       {% elsif value == "2.5cm" and product.selected_or_first_available_variant.title contains "L" or product.selected_or_first_available_variant.title contains "XL" %}
         {% assign selected = true %}
       {% endif %}
     {% endif %}
     <option value="{{ value | escape }}" {% if selected %}selected{% endif %}>{{ value | escape }}</option>
   {% endfor %}
   </select>
 {% else %}
   <!-- Der Standardcode für andere Optionen -->
 {% endif %}
{% endfor %}

 

Dieser Code überprüft, ob die aktuelle Option "Stil" ist und wählt standardmäßig die 1.5cm-Leine für die Größen S & M und die 2.5cm-Leine für die Größen L & XL aus.

 

Beachte aber, wie gesagt, dass diese Anpassung möglicherweise nicht mit allen Themes kompatibel ist und bei einigen Themes weitere Anpassungen erforderlich sein können.

Gabe | Social Care @ Shopify
 - War meine Antwort hilfreich? Klicke Like um es mich wissen zu lassen! 
 - Wurde deine Frage beantwortet? Markiere es als Akzeptierte Lösung 
 - Um mehr zu erfahren, besuche das Shopify Help Center oder den Shopify Blog

Lösung in ursprünglichem Beitrag anzeigen

3 ANTWORTEN 3

Gabe
Shopify Staff
17365 2750 4056

Hey Philipp,

 

Um das zu erreichen was du möchtest müsste eine etwas komplexe Bedingungslogik in das Theme Code eingebaut werden da das an die Grenzen der nativen Optionen in den Varianten stößt was du haben möchtest indem du die Leinen nicht als eigene Einheiten im Bestand pflegst (soweit ich das verstanden habe). 

 

Gerne können wir über eine Code Lösung reden die ihr mit einem Experten einbauen könnte insofern unsere Bundle Apps oder unsere Product Option Apps nicht ausreichend sind. Hast du diese schon ausprobieren können?

Gabe | Social Care @ Shopify
 - War meine Antwort hilfreich? Klicke Like um es mich wissen zu lassen! 
 - Wurde deine Frage beantwortet? Markiere es als Akzeptierte Lösung 
 - Um mehr zu erfahren, besuche das Shopify Help Center oder den Shopify Blog

Doganddress
Besucher
2 0 0

Hi Gabe,

danke für deine Antwort! Die Leinen sind auch als eigenes Produkt im Shop gelistet. Macht dies das ganze etwas einfacher? 🙂

Gabe
Shopify Staff
17365 2750 4056

Erfolg.

@Doganddress 

 

Gerne und schauen wir uns an was es für eine Anpassung verlangen würde. Wenn du es selber auf deiner Produktseite programmieren möchtest dann bitte immer in einer Themekopie/Testumgebung zuerst testen und zusammen mit einem Experten/Programmierer. 

Änderungen zu deinem Theme Code können auch 1) die Page Loading Speeds negative beeinflussen und 2) dein Theme aus den Theme Updates ausschließen. Das folgende ist Theme-abhängig, ohne Gewähr und dient lediglich dazu dich in die richtige Richtung zu weisen.

 

Man könnte beispielsweise im product.liquid oder product-template.liquid im Ordner "Sections" oder "Templates" den Bereich, in dem die Varianten-Auswahl angezeigt wird suchen je nach Theme. Die Stelle könnte etwas Ähnliches wie {% for option in product.options_with_values %} enthalten. Dann müsste man den vorhandenen Varianten-Code durch die folgenden For-Loop und IF-Statement im Code ersetzen oder ergänzen (wie gesagt, bitte zusammen mit einem Liquid und Shopify Experten):

 

{% for option in product.options_with_values %}
 {% if option.name == "Stil" %}
   <label>{{ option.name | escape }}</label>
   <select id="{{ option.name | handle }}" name="options[{{ option.name | escape }}]">
   {% for value in option.values %}
     {% assign selected = false %}
     {% if product.selected_or_first_available_variant.title contains value %}
       {% if value == "1.5cm" and product.selected_or_first_available_variant.title contains "S" or product.selected_or_first_available_variant.title contains "M" %}
         {% assign selected = true %}
       {% elsif value == "2.5cm" and product.selected_or_first_available_variant.title contains "L" or product.selected_or_first_available_variant.title contains "XL" %}
         {% assign selected = true %}
       {% endif %}
     {% endif %}
     <option value="{{ value | escape }}" {% if selected %}selected{% endif %}>{{ value | escape }}</option>
   {% endfor %}
   </select>
 {% else %}
   <!-- Der Standardcode für andere Optionen -->
 {% endif %}
{% endfor %}

 

Dieser Code überprüft, ob die aktuelle Option "Stil" ist und wählt standardmäßig die 1.5cm-Leine für die Größen S & M und die 2.5cm-Leine für die Größen L & XL aus.

 

Beachte aber, wie gesagt, dass diese Anpassung möglicherweise nicht mit allen Themes kompatibel ist und bei einigen Themes weitere Anpassungen erforderlich sein können.

Gabe | Social Care @ Shopify
 - War meine Antwort hilfreich? Klicke Like um es mich wissen zu lassen! 
 - Wurde deine Frage beantwortet? Markiere es als Akzeptierte Lösung 
 - Um mehr zu erfahren, besuche das Shopify Help Center oder den Shopify Blog