Liquid, JavaScript, Themes
Hallo Zusammen 👋
Aktuell versuche ich die Mindestabnahmemenge durch ein Workaround o.ä zu erstellen.
Ich bin leider kein Coder, habe etwas Erfahrung, aber auch nur, weil mich das Thema interessiert.
Ich habe versucht im main-product.liquid zu sagen, dass wenn ein Produkt den Tag "MIN5" hat, dass dieses Produkt bitte erst ab 5 Einheiten verkauft werden darf. Leider führen meine Ergebnisse nicht zum Ziel und ich sitze jetzt bald seit 3 Tagen dran.
Hat jemand aus der Community einen Tipp für mich, oder wäre so nett mir zu helfen?
Ich nutze das Thema von CleanCanvas - Enterprise
https://www.cleancanvas.co.uk/shopify-themes/enterprise
Den Entwickler hatte ich auch gefragt gehabt, nur ist es wohl nicht in deren Support enthalten bei Coding fragen zu helfen.
LG an die Community
Du musst ggf. im Produkt Liquid das product-Objekt finden und ein Code da einbauen, dass den Tag MIN5 erkennt und es auf min_quantity = 5 setzt, wie z. B. mit folgender FOR-Loop:
{% assign min_quantity = 1 %}
{% for tag in product.tags %}
{% if tag contains 'MIN' %}
{% assign min_quantity = tag | remove: 'MIN' | plus: 0 %}
{% endif %}
{% endfor %}
Du brauchst außerdem ein data-Attribut im Add-to-Cart Button Code wie:
<button type="submit" class="product-form__submit" data-min-qty="{{ min_quantity }}">
{{ 'products.product.add_to_cart' | t }}
</button>
Dann musst du JavaScript einfügen, um die Mindestmenge zu erzwingen, an der Stelle, wo das Produktformular verarbeitet wird.
Ist alles nicht so einfach und du kannst deine Frage gerne im Developer Forum hier auf Englisch posten.
Moin,
colles Theme!
Du hast zwei Möglichkeiten.
1) Eine App mit kostenlosem Plan wie die OC Quantity Breaks
2) Ohne App:
Erst mal eine Kopie anlegen, damit nichts kaputt geht 🙂
- Gehe in deinem Code in die main-product.liquid .
- Suche nach class="qty-input__input input"
- ...bei diesem Element müssen wir den Wert min="1" überschreiben mit min="{{ minimum_order_qty }}"
- Noch input Element brauchen wir dann eine Abfrage, so dass es so dann aussieht:
{% assign minimum_order_qty = 1 %}
{% for tag in product.tags %}
{% if tag contains 'MIN' %}
{% assign min_qty_str = tag | remove: 'MIN' %}
{% assign minimum_order_qty = min_qty_str | plus: 0 %}
{% break %}
{% endif %}
{% endfor %}
<input type="number" class="qty-input__input input" id="quantity-template--24124634497312__main" name="quantity" min="{{ minimum_order_qty }}" value="1">
...jetzt hast du es sogar variabel ... bedeutet, wenn du mal MIN10 setzt, wird er auch 10 dort setzen.
Hallo Marcel, vorab vielen Dank für deinen Lösungsvorschlag.
Die Klasse class="qty-input_input input" habe ich leider nicht im main-product.liquid.
Das was am ähnlichsten mir erscheint ist:
<input type="hidden" name="id" value="{{ current_variant.id }}" disabled>
<div class="product-info__add-to-cart flex{% if enable_dynamic_checkout %} qty-input--secondary-btn{% endif %}">
{%- if block.settings.show_qty_selector -%}
{% render 'quantity-input', layout_style: "combined" %}
{%- else -%}
<input type="hidden" name="quantity" value="">
{%- endif -%}
<div class="product-info__add-button">
{%- capture add_to_cart_text -%}
{%- if product.template_suffix contains 'preorder' -%}
{{- 'products.product.preorder' | t -}}
{%- else -%}
{{- 'products.product.add_to_cart' | t -}}
{%- endif -%}
Ist das hier die richtige Stelle? 😊
Ich kann es leider nicht sehen, da es bei jedem THeme etwas anders ist. Schaue doch noch mal , ob es ein snippet names product-info.liquid gibt und schaue dort.
@KoiArea hat das geholfen oder soll ich noch mal reinschauen?
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