Manuel Killert
Ratgeber · WooCommerce · Warenkorb

Der Warenkorb leert sich — und mit ihm die Bestellung.

Der Kunde legt drei Artikel hinein, klickt weiter, und der Warenkorb ist leer. Oder er wechselt auf die Kasse und sieht plötzlich nichts mehr. Das ist einer der teuersten Fehler im Shop, weil er nie gemeldet wird — der Kunde geht einfach.

Referenzen ansehen →Hilfe anfragen
Kurz gesagt

WooCommerce merkt sich den Warenkorb über eine Sitzung: ein Cookie im Browser verweist auf einen Eintrag in der Datenbank. Geht eines von beiden verloren, ist der Warenkorb weg. Mit Abstand häufigste Ursache ist Caching — eine zwischengespeicherte Seite liefert einen fremden oder leeren Warenkorbstand aus. Danach kommen Cookie-Probleme durch Domainwechsel und eine zu kurze oder gestörte Sitzungsverwaltung.

Sofort-Hilfe

Website down oder gehackt? Schreib mir per WhatsApp oder E-Mail mit Domain und kurzer Beschreibung — ich melde mich in der Regel innerhalb weniger Stunden, auch am Wochenende, wenn es brennt. Zugangsdaten bitte nie in der ersten Nachricht, sondern erst nach Absprache über einen sicheren Weg.

Wie der Warenkorb funktioniert.

Legt ein Besucher etwas in den Warenkorb, passieren zwei Dinge: WooCommerce legt einen Sitzungseintrag in der Datenbank an und setzt ein Cookie im Browser, das auf diesen Eintrag zeigt. Bei jedem weiteren Seitenaufruf liest der Shop das Cookie, findet den Eintrag und zeigt den Inhalt. Fällt eines der beiden Teile weg — kein Cookie, kein Eintrag oder ein falsch zugeordneter —, ist der Warenkorb aus Sicht des Besuchers leer.

Bei angemeldeten Kunden kommt eine zweite Ebene dazu: Der Inhalt wird am Benutzerkonto gespeichert und bleibt dadurch auch nach dem Schließen des Browsers erhalten. Das erklärt, warum ein Problem oft nur Gäste betrifft.

Caching: der Hauptverdächtige.

Ein Seiten-Cache liefert allen Besuchern dieselbe fertige Seite aus. Bei Warenkorb, Kasse und Kontobereich darf das nicht passieren — sonst sieht Kunde B den Stand von Kunde A oder einen leeren Warenkorb von vor zwei Stunden. Jedes brauchbare Caching-Plugin kennt diese Ausnahmen, aber sie müssen gesetzt und wirksam sein.

  • Shop-Seiten ausnehmen: Warenkorb, Kasse, Mein Konto und alles unterhalb davon.
  • Vorgeschaltete Dienste prüfen: Ein Cache vor deinem Server kennt deine Plugin-Einstellungen nicht.
  • Cookie-Regel: Besucher mit gesetztem Warenkorb-Cookie sollten gar keine zwischengespeicherte Seite bekommen.
  • Warenkorbanzeige im Kopfbereich dynamisch nachladen, sonst zeigt sie überall eine falsche Zahl.

Test: im privaten Fenster einkaufen, nicht als angemeldeter Administrator — du bekommst Seiten ungecacht und merkst deshalb nichts (Cache leeren).

Cookies und Domainvarianten.

Ein Cookie gilt für genau eine Domain. Wechselt der Besucher unterwegs zwischen Varianten, verliert er seinen Warenkorb:

WechselFolge
Von www auf ohne wwwCookie gilt nicht mehr, Warenkorb weg
Von http auf https mitten im VorgangNeues Cookie, alter Inhalt verloren
Shop auf Subdomain, Seite auf HauptdomainGetrennte Sitzungen
Zahlungsanbieter leitet auf falsche Variante zurückNach der Zahlung ist der Warenkorb leer

Die Lösung ist, überall dieselbe Adressvariante zu erzwingen: eine dauerhafte Weiterleitung auf die gewünschte Schreibweise und in den WordPress-Einstellungen beide Adressfelder exakt gleich (Weiterleitungen einrichten). Prüfe auch die Rücksprungadressen bei den Zahlungsanbietern.

Sitzungsdauer.

WooCommerce hält eine Gastsitzung standardmäßig zwei Tage. Wer einen Warenkorb länger erhalten will, kann das verlängern — sinnvoll bei Shops, in denen Kunden mehrfach zurückkommen, bevor sie bestellen.

Sitzungsdauer verlängern (eigenes Mini-Plugin)
<?php
// Gast-Sitzung statt 2 Tagen 14 Tage halten.
add_filter( 'wc_session_expiring', function () {
    return 60 * 60 * 24 * 14 - 3600;
} );
add_filter( 'wc_session_expiration', function () {
    return 60 * 60 * 24 * 14;
} );

Längere Sitzungen lassen die Sitzungstabelle wachsen. Bei sehr viel Verkehr lieber moderat verlängern.

Sitzungstabelle in der Datenbank.

Die Sitzungen liegen in einer eigenen Tabelle. Zwei Dinge können dort schiefgehen. Erstens: Die Tabelle ist beschädigt, dann lassen sich keine Sitzungen mehr lesen oder schreiben — Symptom ist, dass der Warenkorb bei allen Besuchern sofort leer ist (Datenbank reparieren). Zweitens: Die automatische Aufräumaufgabe läuft nicht, die Tabelle wächst auf hunderttausende Einträge und wird langsam. Dass solche Aufgaben nicht laufen, ist ein verbreitetes Problem (WP-Cron und verpasste Aufgaben).

Ein voller Webspace führt zum gleichen Bild, weil keine Einträge mehr geschrieben werden können (Webspace voll). Das ist eine der unterschätztesten Ursachen überhaupt.

Plugins und Optimierung.

Verdächtig sind Erweiterungen, die in Cookies oder Sitzungen eingreifen: Einwilligungsbanner, die alle Cookies vor der Zustimmung blockieren — inklusive der technisch notwendigen; Optimierungs-Plugins, die Cookies entfernen oder Anfragen zusammenfassen; Sicherheits-Plugins mit eigener Sitzungsverwaltung; und Mehrsprachigkeits-Plugins, wenn der Sprachwechsel die Domain verändert.

Zum Einwilligungsbanner ein wichtiger Punkt: Der Warenkorb-Cookie ist technisch notwendig und braucht keine Einwilligung. Blockiert dein Banner ihn trotzdem, ist das kein Datenschutzgewinn, sondern ein kaputter Shop (Cookie-Banner DSGVO).

Beim Anmelden verschwindet alles.

Ein eigenes Fehlerbild: Der Gast füllt den Warenkorb, meldet sich in der Kasse an — und der Korb ist leer. Normalerweise überträgt WooCommerce den Inhalt beim Anmelden auf das Konto. Scheitert das, liegt es meist an einem Plugin, das den Anmeldevorgang verändert, oder an einem gespeicherten alten Warenkorb am Konto, der den aktuellen überschreibt. Teste beide Richtungen: erst anmelden und dann füllen, und umgekehrt. Nur so grenzt du es ein.

Nur auf dem Handy.

Wenn das Problem nur mobil auftritt, kommen zwei Besonderheiten infrage. Erstens liefern manche Shops eine eigene mobile Fassung aus dem Cache aus — mit denselben Problemen wie oben. Zweitens löschen Browser auf Mobilgeräten Daten aggressiver, besonders im privaten Modus oder bei knappem Speicher. Teste deshalb immer auf einem echten Gerät über Mobilfunk, nicht nur in der verkleinerten Desktop-Ansicht.

Prüfweg.

  1. Im privaten Fenster Artikel hinzufügen, mehrere Seiten weiterklicken, Warenkorb prüfen.
  2. Entwicklerwerkzeuge öffnen und nachsehen, ob die Warenkorb-Cookies gesetzt sind.
  3. Caching komplett abschalten und erneut testen.
  4. Mit und ohne www sowie über http und https prüfen.
  5. Alle Plugins außer WooCommerce deaktivieren, dann einzeln wieder ein.
  6. Als Gast und als angemeldeter Kunde testen.
  7. Auf dem Handy über Mobilfunk gegenprüfen.

Schaden messen.

Dieser Fehler wird fast nie gemeldet, deshalb lohnt eine Zahl: Wie viele Warenkörbe werden gefüllt, und wie viele Bestellungen entstehen daraus? Bricht das Verhältnis plötzlich ein, hast du ein technisches Problem und kein Marketingproblem. Ein Plugin für abgebrochene Warenkörbe liefert diese Zahlen nebenbei — und zeigt dir gleichzeitig, an welcher Stelle abgebrochen wird (Checkout funktioniert nicht).

Wenn du nicht weiterkommst.

Wenn Warenkörbe sich leeren und du die Ursache nicht findest, prüfe ich Caching, Cookies und Sitzungen im Zusammenspiel. Ich finde die Ursache, behebe sie und erkläre dir, was passiert ist: WooCommerce-Support, bei einem Ausfall im laufenden Verkauf der Notfall-Support. Damit es gar nicht erst so weit kommt: WooCommerce-Wartung.

Fehleranalyse & Erste Hilfeab ~150 €

Ursache finden, Website wieder zum Laufen bringen, kurzer Bericht — meist am selben Tag.

Stundensatz~95 €

Für Anpassungen, Fehlerbehebung und Beratung nach Aufwand, abgerechnet in 15-Minuten-Schritten.

Wartungab ~49 €/Monat

Updates, Backups, Sicherheitscheck, Monitoring — Kleinigkeiten inklusive.

Orientierungswerte, keine Fixpreise — nach einem kurzen Gespräch bekommst du ein Festpreisangebot.

Wer hilft.

Ich bin Manuel Killert, WordPress-Entwickler aus Quakenbrück. Seit 2020 baue und betreue ich WordPress-Websites — für Handwerksbetriebe, Industrie, Gastronomie, Start-ups und Vereine —, entwickle eigene Plugins und unterrichte WordPress als Dozent an der KW Design Akademie. Das heißt: Ich kenne die typischen Fehler nicht nur aus Foren, sondern aus eigenen Projekten, und ich kann sie so erklären, dass du sie beim nächsten Mal selbst erkennst. Du erreichst mich direkt, ohne Ticketsystem.

Häufige Fragen

FAQ — Warenkorb leert sich.

Warum leert sich der WooCommerce-Warenkorb von selbst?

Weil die Sitzung verloren geht. WooCommerce merkt sich den Inhalt über ein Cookie und einen Datenbankeintrag. Fällt eines davon weg, ist der Warenkorb leer. Häufigste Ursache ist Caching.

Warum zeigt der Warenkorb manchmal fremde Artikel?

Weil eine zwischengespeicherte Seite an mehrere Besucher ausgeliefert wird. Warenkorb, Kasse und Kontobereich müssen vom Caching ausgenommen sein.

Was hat www mit dem Warenkorb zu tun?

Ein Cookie gilt nur für eine Domainvariante. Wechselt der Besucher von www auf die Variante ohne www, gilt sein Cookie nicht mehr und der Warenkorb ist weg.

Wie lange hält WooCommerce einen Gast-Warenkorb?

Standardmäßig zwei Tage. Das lässt sich über Filter verlängern, was bei Shops mit mehrfach wiederkehrenden Besuchern sinnvoll ist.

Kann das Cookie-Banner schuld sein?

Ja, wenn es alle Cookies vor der Zustimmung blockiert. Der Warenkorb-Cookie ist technisch notwendig und braucht keine Einwilligung — ihn zu blockieren bringt keinen Datenschutzgewinn, sondern einen kaputten Shop.

Warum ist der Warenkorb nach dem Anmelden leer?

Normalerweise überträgt WooCommerce den Gast-Warenkorb auf das Konto. Scheitert das, verändert meist ein Plugin den Anmeldevorgang, oder ein alter gespeicherter Warenkorb am Konto überschreibt den aktuellen.

Manuel Killert (rechts im Bild) mit einem FreundDas bin ich – rechts im Bild
Kontakt

Erzähl mir, was nicht funktioniert.

Domain und eine kurze Beschreibung reichen — du bekommst eine ehrliche Einschätzung, was los ist und was die Behebung kostet.

Antwort meist innerhalb von 24 Stunden · hallo@manuelkillert.de