Liquid, JavaScript, Themes
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.
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 🙂
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!
Ich vermute, du berechnest jetzt die Ersparnis lediglich statisch auf das erste Produkt und nicht dynamisch in Abhängigkeit zur gewählten Variante.
Mit dem Lernpfad der Shopify Academy und dem Verified Skills-Badge Expanding Your Sho...
By Shopify Feb 7, 2025Den Verkauf im Großhandel steigern: In der Shopify Academy lernst du, wie das geht, zum...
By Shopify Feb 3, 2025Teil 2 - Wie die Prinzipien des UX-Designs dir dabei helfen können einen großartigen Shop ...
By Kai Sep 16, 2024