Der Cart items-Block ist die Liste der Positionen im Cart. Er rendert jedes vom Kunden hinzugefügte Produkt mit Bild, Titel, Variante, Preis, Mengenwähler und Entfernen-Steuerung. Er ist ein Pflichtblock und der Container, der die Unterblöcke des Carts beherbergt (die Product-Zeile, Subscription upgrade und Custom code). Er bietet die Struktur, an der sich zeilenbasierte Unterblöcke anheften.

Die Product-Zeile
Die Zeile selbst rendert das Produktbild (mit Link zur Produktseite, sofern verfügbar), Titel, Variante, Preis und einen eventuell durchgestrichenen Compare-at-Preis, einen Mengenwähler und eine Entfernen-Schaltfläche. Bundle-Zeilen zeigen eine ausklappbare Liste ihrer Komponenten.
Textgestaltung
Die gestaltbaren Textelemente sind nach Kategorie gruppiert:
Product
- Product title — der Produktname in jeder Zeile. Unterstützt außerdem eine benutzerdefinierte Schriftfamilie.
- Variant — die Variantenbezeichnung (zum Beispiel Size: Medium).
- Subscription plan — die schreibgeschützte Plan-Bezeichnung auf Abonnementzeilen.
- Price — der aktuelle Preis der Zeile.
- Compare-at price — der durchgestrichene ursprüngliche Preis.
- Savings — die Ersparnis-Beschriftung (zum Beispiel Save $5.00). Nur Größe und Zeilenhöhe — Fettschrift und Farbe werden im Rich Text Editor oberhalb festgelegt.
- Bundle toggle — der ausklappbare Header, der die Komponentenliste eines Bundles öffnet.
- Bundle item title — der Titel jeder Komponente innerhalb eines Bundles.
- Bundle item variant — die Variantenbezeichnung für jede Bundle-Komponente.
Diese Einstellungen gelten nur für Positions-Rabatt-Tags im Cart items-Block. Rabattcode-Tags im Summary-Block werden separat gestaltet.
Unterblöcke und ihre Positionierung
- Unterblöcke, die vor der Product-Zeile angeordnet sind, erscheinen in jeder Zeile über dem Produktinhalt.
- Unterblöcke, die nach der Product-Zeile angeordnet sind, erscheinen in jeder Zeile unter dem Produktinhalt.
Verhalten
- Wenn der Cart keine Artikel enthält, wechselt der Drawer in den leeren Zustand und dieser Block wird nicht angezeigt.
- Es läuft immer nur eine Cart-Änderung gleichzeitig. Während eine Mengenänderung oder Entfernung läuft, sind die Steuerelemente der Zeile deaktiviert, um den Cart konsistent zu halten, und werden wieder aktiviert, sobald die Änderung abgeschlossen ist.
- Das Absenken der Menge einer Zeile unter 1 entfernt sie. Eine Menge, die der Store ablehnt (zum Beispiel über den verfügbaren Bestand hinaus), wird auf den letzten gültigen Wert zurückgesetzt.
- Bundles ändern sich als Einheit. Das Anpassen der Menge auf der Ankerzeile eines Bundles skaliert das gesamte Bundle in einem Vorgang — wenn ein Kind mit 3 pro Anker enthalten ist, bringt eine Erhöhung des Ankers von 1 auf 2 dieses Kind auf 6. Das Entfernen des Ankers entfernt alle Bundle-Mitglieder auf einmal.
- Manche Bundles lassen sich nicht in der Menge ändern. Wenn eines der Kinder eines Bundles mit einer gebrochenen Rate enthalten ist (zum Beispiel 1,5 pro Anker), ist der Mengenwähler dieses Bundles gesperrt: Die +/−-Schaltflächen und das Mengenfeld sind beide deaktiviert, und eingetippte Mengen werden nicht akzeptiert. Das Bundle kann weiterhin entfernt werden.
- Abonnementzeilen zeigen ihren Plan. Wenn eine Zeile einen Selling Plan hat und der Unterblock Subscription upgrade deaktiviert oder nicht hinzugefügt ist, zeigt die Product-Zeile eine schreibgeschützte Plan-Beschriftung unter der Variante — zum Beispiel Delivers every month (save 30%). Wenn dieser Unterblock aktiviert ist, präsentiert er den Plan in seiner eigenen Auswahl, sodass die schreibgeschützte Beschriftung unterdrückt statt dupliziert wird.
Platzierung und Grenzen
- Bereich: Body.
- Maximum: 1 pro Cart-Zustand.
- Zustand: nur gefüllter Cart.
- Gesperrt und standardmäßig hinzugefügt. Cart items kann nicht entfernt oder ausgeblendet, nur neu positioniert werden.
Benutzerdefiniertes Template
Zeileninhalt
Menge und Entfernen
Ein Bundle rendern
bundle.children dessen Inhalte. Kinder erscheinen nie als eigene Zeilen — wenn du sie nicht renderst, sieht der Kunde also nicht, was im Bundle ist:
key eines Kindes ist bei einer nativen Shopify-Bundle-Komponente null, greife also wie oben auf den Index zurück.