Cart

Cart

Hinweis

Attribute für Geldbeträge wie Preise und Gesamtsummen sind in der lokalen Währung des Kunden (Präsentationswährung) angegeben. Verwenden Sie einen Geldfilter, um das Ergebnis als Geldbetrag anzuzeigen

Die Variable cart erlaubt den Zugriff auf den Warenkorb eines Kunden. Der Warenkorb enthält im Wesentlichen die Einkaufspositionen, also Produkte, die in einer bestimmten Menge gekauft werden, und alle notwendigen Informationen zu weiteren kostenbezogenen Elementen, also den Versandarten, sowie der Zahlungsart.

Dieser Informationsbestand wächst sukzessive während ein Kunde den Checkout-Prozess durchläuft. Ist eine Bestellung abgesetzt, wird der Warenkorb neu initialisiert und steht “geleert” einem neuen Kauf zur Verfügung.

Einfache Auflistung der Positionen eines Warenkorbes:
<table>
<tr>
<th>Menge</th>
<th>Artikel</th>
<th>Preis</th>
<th>Summe</th>
</tr>

{% for item in cart.items %}
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
{% endfor %}

</table>
Versandartenattribute Versandarten werden unter Administration » Verwaltung » Einstellungen » Versandarten eingerichtet.

Sollten Sie als Berechnungsgrundlage „Gewicht” wählen, müssen alle Produkte in Ihrem Katalog eine Gewichtsangabe haben!

Der Warenkorb ermittelt automatisch die für die Gesamtheit aller Warenkorbpositionen geeigneten Versandarten. Dazu werden nur diejenigen Versandarten genutzt, die als „Standard” markiert sind. Herausgesucht werden dann diejenigen Versandarten, bei denen entweder das Gesamtgewicht (total_weight) oder der Warenwert (subtotal_price) im angegebenen Bereich liegt und die ausserdem in das Bestimmungsland (destination_country) ausliefert werden sollen.

Bei der Einrichtung Ihrer Versandarten sollten Sie sich für eine der beiden Berechnungsgrundlagen „Preis” oder „Gewicht” generell entscheiden.

Unter bestimmten Voraussetzungen muss der Versand gesplittet werden. Dazu kommt es, wenn Sie einem Produkt explizit eine oder mehrere spezielle Versandarten zugewiesen haben, denn dann wird der Warenkorb „gezwungen”, diese Versandart für diese Position zu benutzen. Wenn Sie mehrere spezielle Versandarten für ein Produkt angegeben haben, können Sie Ihre Kunden im Warenkorb die geeignete auswählen lassen. Geben Sie Ihren Kunden diese Wahlmöglichkeit nicht, wird jeweils automatisch die erste Versandart ausgewählt.

Bestimmte Produkte müssen immer gesondert versendet werden, z.B. dann, wenn ein Produkt unter die Richtlinien des Jugendschutzgesetzes fallen, z.B. DVD’s mit Altersbeschränkung.

So können Sie Ihre Kunden detailliert über die Versandarten informieren:
{% case cart.standard_shipping_types_count %}
{% when 0 %}
{% if cart.extra_shipping_types_count == 0 %}
<p><small>Es konnte keine geeignete Versandart für diese Artikel gefunden werden.
Bitte nehmen Sie Kontakt mit uns auf, damit der Versand geklärt werden kann.</small></p>
{% else %}
<p><small>Alle Artikel werden gesondert versendet.</small></p>
{% endif %}
{% when 1 %}
<p><small>Versand erfolgt per: {{ cart.shipping_type.name }}.

Vorraussichtliche Lieferung innerhalb Deutschlands bei Sofortzahlung per Kreditkarte am:
{{ cart.shipping_type.estimated_delivery | date: "%d.%m.%Y" }}</small></p>
{% else %}
<h3>Bitte wählen Sie eine Versandart</h3>
{% for shipping_type in cart.standard_shipping_types %}
<p>
<input type="radio" name="standard_shipping_type" value="{{ shipping_type.id }}"
{% if cart.shipping_type.name == shipping_type.name %}checked="checked" {% endif %}
onchange="document.forms['cartform'].submit();"/>
<label>{{ shipping_type.name }} ({{ shipping_type.price | money }})</label>

<small>Voraussichtliche Lieferung innherhalb Deutschlands bei Sofortzahlung per Kreditkarte am:
{{ shipping_type.estimated_delivery | date: "%d.%m.%Y %H:%M" }}</small>

</p>
{% endfor %}
{% endif %}
{% endcase %}

{% if cart.extra_shipping_types.size > 0 %}
<p><small>Besondere Versandart für {{ cart.extra_shipping_items_count }} Artikel:

{% for shipping_type in cart.extra_shipping_types %}
{{ shipping_type.name }} ({{ shipping_type.price | money }})

{% endfor %}
</small></p>
{% endif %}


cart.attributes

cart.attributes ermöglichen das Erfassen weiterer Informationen auf der Warenkorbseite. Dies geschieht, indem einer Eingabe ein Namensattribut mit der folgenden Syntax zugewiesen wird:
attributes[attribute-name]
Im Folgenden sehen Sie ein einfaches Beispiel für die Verwendung einer HTML-Eingabe vom Typ "Text" zum Erfassen von Informationen auf der Warenkorbseite.
<label>What is your Pet's name?</label>
<input type="text" name="attributes[your-pet-name]" value="{{ cart.attributes.your-pet-name }}" />

Auf cart.attributes kann in Bestell-E-Mail-Vorlagen, auf der Bestellstatusseite der Kasse sowie in Apps wie dem Order Printer zugegriffen werden.
{{ attributes.your-pet-name }}
Haku


cart.coupon

Gibt die Variable coupon zurück, wenn der Kunde einen Coupon-Code eingegeben hat.


cart.coupon_value

Gibt den durch den angegebenen Coupon reduzierten Betrag zurück.


cart.delivery_country

Gibt diejenigen Ländercodes zurück, die durch die geeigneten Versandarten der Artikel des Warenkorbes möglich sind.


cart.destination_country

Gibt die vom Benutzer ausgewählte Bestimmungsland Länderkennung zurück. Falls keine angegeben wurde, ist die Länderkennung “de”.



cart.errors

Gibt eine Liste mit Fehlermeldungen zurück. Jedes Element dieser Liste ist eine Zeichenkette.



cart.estimated_delivery

Gibt den berechneten Lieferzeitpunkt zurück. Falls die Sendung gesplittet werden muss, wird der späteste Auslieferzeitpunkt aller Versandarten angegeben. Weitere Informationen, wie dieser Zeitpunkt festgelegt wird, erfahren Sie auf der Seite zum Thema Variable carrier.


cart.extra_price

Weist die Summe aller Extrakosten der Positionen aus. Kann z.B. genutzt werden um Flaschenpfand in der Abrechnung gesondert anzugeben.


cart.extra_shipping_cost

Gibt die Versandkosten der explizit zugewiesenen Versandarten zurück. Das Bestimmungsland und ggf. anfallende Auslandsgebühren werden berücksichtigt.


cart.extra_shipping_items

Gibt alle Positionen des Warenkorbes zurück, jeweils als item, die in explizit zugewiesenen Versandarten versendet werden müssen.


cart.extra_shipping_items_count

Gibt die Anzahl der Positionen des Warenkorbes zurück, die in explizit zugewiesenen Versandarten versendet werden müssen.



 cart.extra_shipping_types

Gibt alle für diesen Warenkorb notwendigen Versandarten zurück, jeweils als Variable carrier. Diese Versandarten wurden den Produkten explizit zugewiesen.


cart.id

Gibt eine eindeutige ID des Warenkorbs zurück.


cart.item_count

Gibt die Anzahl der Positionen im Warenkorb zurück.
{{ cart.item_count }} {{ cart.item_count | pluralize: 'Item', 'Items' }} ({{ cart.total_price | money }})
25 Items (53.00€)


cart.items

Gibt alle Positionen des Warenkorbes zurück, jeweils als item.


cart.last_action

Gibt aus, welche Action zuletzt aufgerufen wurde. Die ausgegebenen Werte sind entweder ‘show’ und ‘update’ show ist der ausgegebene Wert, wenn man den Warenkorb lediglich angezeigt bekommen hat. update ist der ausgegebene Wert, wenn man etwas am Warenkorb geändert hat. Zum Beispiel den Warenkorb aktualisieren, Produkte hinzufügen, entfernen o.ä.


cart.note

Enthält eine vom Kunden eingegebene Nachricht, die er während des Checkout Prozesses als Kurzmitteilung hinzufügen kann.



cart.order_code

Gibt eine eindeutige Bestellnummer zurück. Sie wird automatisch generiert, sobald ein Warenkorb initialisiert wird und bleibt bis zum Abschluss einer Bestellung bestehen.


cart.payment

Gibt die Variable payment zurück. Diese wird im Checkout-Prozess benötigt und successive gefüllt. In der payment Variable werden temporär Kundenangaben zur Zahlungsart gespeichert. Diese Angaben werden sicher verschlüsselt im Sessionobjekt des Kunden abgelegt.


cart.payment_cost

Gibt die Gebühr zurück, die für die vom Kunden gewählte Zahlart erhoben werden soll. I.d.R. der Preis für die Bezahlung per Nachnahme.



cart.product_count

Gibt die Anzahl der Produkte im Warenkorb zurück.



cart.products

Gibt den Inhalt des Warenkorbs als Liste von Product-Elementen zurück.



cart.random_number

Gibt eine zufällige Zahl zwischen 1 und 2 mit 15 Nachkommastellen aus.



cart.recommendations

Gibt alle Empfehlungen aus allen Warenkorbpositionen zurück, jeweils als Recommendation.



cart.reduced_tax_amount

Gibt den Steueranteil aus Warenkorbpositionen mit reduzierten Steuersätzen zurück.



cart-reduced_taxt_rate

Gibt den verringerten Steuersatz des Shops zurück.



cart.shipping_cost

Gibt die Kostensumme aller Versandarten dieses Warenkorbes zurück - die Summe aus standard_shipping_cost und extra_shipping_cost.



cart.shipping_type

Gibt die Versandart des Warenkorbes zurück. Entweder die erste der für diesen Warenkorb geeignete (gilt für Positionen, die im Standardversand verschickt werden), oder die vom Benutzer gewählte Versandart, sofern Ihr cart.liquid-Template diese Auswahl zulässt.



cart.source

Gibt den Partner an, von dem der Kunde auf den Shop gekommen ist. Schließt der Kunde eine Bestellung ab, steht der Partner in dieser Variable. Damit ein Partner eingetragen wird, muss der Kunde eine URL zum Shop aufrufen, der den GET-Parameter “source” am Ende trägt.



cart.standard_shipping_cost

Gibt die Versandkosten der vom Warenkorb ermittelten Standardversandart zurück. Das Bestimmungsland und ggf. anfallende Auslandsgebühren werden berücksichtigt.



cart.standard_shipping_items

Gibt alle Positionen des Warenkorbes zurück, jeweils als item, die im Standardversand versendet werden.



cart.standard_shipping_items_count

Gibt die Anzahl der Positionen des Warenkorbes zurück, die im Standardversand versendet werden.



cart.standard_shipping_types

Gibt alle für diesen Warenkorb geeigneten Standardversandarten zurück, jeweils als Variable carrier. I.d.R sollte diese Liste aber nur eine Standardversandart umfassen.



cart.standard_tax_amount

Gibt den Steueranteil aus Warenkorbpositionen mit Standardsteuersätzen zurück.



cart.subtotal_price

Gibt die Zwischensumme aus der Summe aller Positionspreise des Warenkorbes zurück. Je nachdem, ob die Preise Steuern enthalten (einzustellen unter Administration > Verwaltung > Allgemein), wird eine besteuerte Zwischensummme berechnet. Dieser Preis schliesst zahlartbedingte Gebühren und Versandgebühren aus.



cart.tax_amount

Gibt den Gesamtsteueranteil des Warenkorbes zurück.


cart.tax_rate

Gibt den Standard-Steuersatz des Warenkorbes zurück.


cart.total_price

Gibt die Gesamtkosten des Warenkorbes zurück, also die Summme aus der Zwischensumme, den Versandkosten und den Gebühren der Zahlungsart.



cart.total_weight

Gibt das Gesamtgewicht aller Bestellpositionen des Warenkorbes in kg zurück.



cart.url

Gibt /cart zurück, was der URL des Warenkorbs entspricht.



cart.utm_source

Das Verhalten ist identisch mit dem von cart.source. Einziger Unterschied ist, dass der GET-Parameter “utm_source” lauten muss.


    • Related Articles

    • Operatoren

      Eine expression setzt sich immer aus 3 Elementen zusammen: {% left operator right %} left und right können dabei Variablen, Zahlen oder Strings sein. Eine Expression kann dadurch entweder “wahr” oder “falsch” zurückgeben. operator kann einer der ...
    • Page_title

      Gibt den Titel der aktuell angezeigten Seite zurück. Template Entsprechung oder Wert index.html Name der Startseite page.html Seitentitel product.html Produktname collection.html Kollektionsname cart.html Warenkorb
    • Template

      Template Inhalt der Variable template index.html index collection.html collection product.html product page.html page cart.html cart checkout/payment payment checkout/confirm confirm checkout/thankyou thankyou Dieser Code könnte in das Template ...
    • Links

      links_to_add_to_list Syntax: {{ title | link_to_add_to_list listname, product_id, alt }} Beispiel: {{ 'Merken' | link_to_add_to_list: 'Merkzettel', product.id, 'Hier klicken, um das Produkt auf den Merkzettel zu setzen' }} link_to Syntax: {{ linktext ...
    • Shop Resource

      Current Shop Informations GET /api/shop.json GET /api/shop.json​ will return informations about the current shop. Example: $ curl -s \ -H 'Accept: application/json' \ -H 'Content-Type: application/json' \ -u APP_API_KEY:APP_API_PASSWORD \ -X GET \ ...