Übersicht
Der Warenkorb wird im localStorage des Browsers gespeichert und bleibt über Seitenneuladungen hinaus bestehen. Alle Warenkorb-Operationen sind synchron und aktualisieren den lokalen Status sofort.
Das komerza-Objekt ist global verfügbar, nachdem das Skript eingebunden
wurde. Rufen Sie komerza.init('ihre-shop-id') auf, bevor Sie andere Methoden
verwenden.
Artikel hinzufügen
Fügen Sie eine Produktvariante mit einer bestimmten Menge zum Warenkorb hinzu.
komerza.addToBasket(productId, variantId, quantity);
Parameter
Die eindeutige Kennung des Produkts
Die eindeutige Kennung der Produktvariante
Wie viele Artikel hinzugefügt werden sollen (Standard: 1, wenn nicht
angegeben)
Beispiel
// Füge 2 Artikel einer bestimmten Produktvariante hinzu
komerza.addToBasket("prod_abc123", "var_xyz789", 2);
// In-den-Warenkorb-Button-Handler
document.getElementById("add-to-cart").addEventListener("click", () => {
const productId = "prod_abc123";
const variantId = document.getElementById("variant-select").value;
const quantity = parseInt(document.getElementById("quantity").value) || 1;
komerza.addToBasket(productId, variantId, quantity);
alert("In den Warenkorb gelegt!");
});
Warenkorb anzeigen
Rufen Sie alle Artikel ab, die sich aktuell im Warenkorb befinden.
const items = komerza.getBasket();
Rückgabe
Gibt ein Array von BasketItem-Objekten zurück:
interface BasketItem {
productId: string; // Produkt-ID
variantId: string; // Varianten-ID
quantity: number; // Anzahl der Artikel
}
Beispiel
const basket = komerza.getBasket();
if (basket.length === 0) {
console.log("Warenkorb ist leer");
} else {
basket.forEach((item) => {
console.log(
`Produkt: ${item.productId}, Variante: ${item.variantId}, Menge: ${item.quantity}`,
);
});
}
Artikelanzahl abrufen
Rufen Sie die Gesamtanzahl der Artikel im Warenkorb ab (Summe aller Mengen).
const count = komerza.getBasketItemCount();
Rückgabe
Gibt eine Zahl zurück, die die Gesamtmenge aller Artikel darstellt.
Beispiel
function warenkorbBadgeAktualisieren() {
const count = komerza.getBasketItemCount();
document.getElementById("cart-count").textContent = count;
if (count > 0) {
document.getElementById("cart-badge").style.display = "block";
}
}
warenkorbBadgeAktualisieren();
Artikel entfernen
Entfernen Sie eine Produktvariante vollständig aus dem Warenkorb.
komerza.removeFromBasket(productId, variantId);
Parameter
Die ID des Produkts, das entfernt werden soll
Die ID der Variante, die entfernt werden soll
Beispiel
function artikelEntfernen(productId, variantId) {
if (confirm("Diesen Artikel aus dem Warenkorb entfernen?")) {
komerza.removeFromBasket(productId, variantId);
warenkorbAnzeigeAktualisieren();
}
}
Warenkorb leeren
Entfernen Sie alle Artikel auf einmal aus dem Warenkorb.
Beispiel
document.getElementById("clear-cart").addEventListener("click", () => {
if (confirm("Alle Artikel aus dem Warenkorb entfernen?")) {
komerza.clearBasket();
warenkorbAnzeigeAktualisieren();
}
});
Sichern und Wiederherstellen
Erstellen Sie Sicherungen des Warenkorb-Zustands und stellen Sie diese später wieder her. Nützlich für die Verwaltung von Bezahlfehlern oder die Implementierung von „Für später speichern”-Funktionen.
Sicherung erstellen
const success = komerza.createBasketBackup();
Gibt true zurück, wenn die Sicherung erfolgreich erstellt wurde.
Sicherung wiederherstellen
const success = komerza.restoreBasketFromBackup();
Gibt true zurück, wenn die Sicherung erfolgreich wiederhergestellt wurde.
Beispiel
async function zurBezahlungFortfahren() {
komerza.createBasketBackup();
try {
const order = await komerza.checkout(email, couponCode);
// Erfolgreich - Weiterleitung zur Kasse
} catch (error) {
// Warenkorb bei Fehler wiederherstellen
komerza.restoreBasketFromBackup();
}
}