FROM CACHE - de_header
Diese Community hat auf Peer-to-Peer-Support umgestellt. Der Shopify Support wird diese Community nicht mehr betreuen. Wir empfehlen dir, dich mit anderen Händler:innen und Partner:innen in Verbindung zu setzen, um Unterstützung zu erhalten und Erfahrungen auszutauschen. Bitte melde weiterhin alles, was gegen unseren Verhaltenskodex verstößt, oder Inhalte, die deiner Meinung nach entfernt werden sollten.

Ersparnis auf der Produktseite anzeigen

Ersparnis auf der Produktseite anzeigen

AP205
Besucher
2 0 0

Hallo,

ich würde gerne die Ersparnisse auf der Produktseite anzeigen lassen.

Folgenden Code verwende ich aktuell dafür:

{%- if settings.discount_saved -%}
<div class="discount_saved">
<div id="DiscountSaved">

{% for variant in product.variants %}
{% capture discount_saved %}
{% if settings.sale_type == "amount" %}
{{ variant.compare_at_price | minus: variant.price | money_without_trailing_zeros }}
{% elsif settings.sale_type == "percentage" %}
{{ variant.compare_at_price | minus: variant.price | times: 100 | divided_by: variant.compare_at_price }}%
{% endif %}
{% endcapture %}
{% if variant.compare_at_price <= variant.price %}
<span style="display:none;" class="number-discount_saved discount_saved-{{ variant.id }}">{{ "products.general.save_html" | t: saved_amount: discount_saved }}</span>
{% else %}
<span style="display:inline;" class="number-discount_saved discount_saved-{{ variant.id }}">{{ "products.general.save_html" | t: saved_amount: discount_saved }}</span>
{% endif %}
{% endfor %}
</div>
</div>
{% endif %}

Es funktioniert soweit, dass die Ersparnisse angezeigt werden. Allerdings werden bei Produkten mit mehreren Varianten auch von allen Varianten die Ersparnisse gleichzeitig angezeigt (s. Bild).

Hat jemand eine Lösung dafür?

Vielen Dank.

Screenshot (57).png

3 ANTWORTEN 3

DP_Development
Shopify Partner
120 14 30

Du lässt im For-Loop alle Varianten durchlaufen und die entsprechende Ersparnis berechnen. Ich würde das nur für die ausgewählte Variante empfehlen. Dazu müsstest du vorher definieren, dass die Ersparnis nur beim aktuellen Produkt angezeigt werden soll:

{%- assign current_product = product.selected_or_first_available_variant -%}

Wenn du die Variable hast, müsstest du deine Berechnung nur noch für current_product durchführen und anzuzeigen. Dann sollte es passen 🙂 

Software Engineer and Frontend Developer
Fast, cheap and straightforward solutions! Shall I do this for you? Just send me a message!
Please click on like and "accepted solution" if my answer helped you.
AP205
Besucher
2 0 0

Hey @DP_Development,

vielen Dank schon einmal für deine Antwort. Ich habe mir schon gedacht, dass es irgendwas mit der ausgewählten Variante zu tun haben muss.

Es funktioniert jetzt, dass nur noch der Rabatt für eine Variante angezeigt wird. Allerdings wird dieser nicht aktualisiert, wenn man die Variante wechselt.

Hättest du da eventuell noch einen Tipp?

Danke!

DP_Development
Shopify Partner
120 14 30

Ich vermute, du berechnest jetzt die Ersparnis lediglich statisch auf das erste Produkt und nicht dynamisch in Abhängigkeit zur gewählten Variante. 

Software Engineer and Frontend Developer
Fast, cheap and straightforward solutions! Shall I do this for you? Just send me a message!
Please click on like and "accepted solution" if my answer helped you.