NGINX-Konfiguration und WooCommerce-Cookies

Manche Warenkorb-Widgets für WooCommerce nutzen AJAX und funktionieren einwandfrei auf gecachten Seiten; andere hingegen nutzen PHP, und mit diesen kommt es auf geacachten Seiten zu Problemen.

Wir empfehlen für diesen Fall, dass du das Caching basierend auf den Warenkorb-Cookies von WooCommerce deaktivierst. Füge dazu einfach die beiden Cookie-IDs woocommerce_items_in_cart und woocommerce_cart_hash zur Erweiterten Einstellung Speichere keine Seiten die folgende Cookies nutzen hinzu:

Unter Apache wird dadurch die .htaccess-Datei aktualisiert. Sobald einer der beiden Cookies (oder beide) dann im Browser vorhanden ist, werden keine Seiten mehr aus dem Cache ausgeliefert, sondern live aus WordPress. Daher wird dein PHP-baisertes Warenkorb-Widget korrekte Werte anzeigen.

Besonderheiten unter NGINX beachten!

Unter NGINX existiert keine .htaccess-Datei, und die Server-Konfigurationsdatei kann nicht automatisch aktualisiert werden. Daher musst die die cookie-basierte Cache-Exklusion für WooCommerce manuell einpflegen. Dafür hast du 2 alternative Möglichkeiten:

A

Rufe Zeile 85 deiner Konfigurationsdatei auf und trage die beiden Cookie-IDs von WooCommerce so ein:

if ($http_cookie ~* "(wordpress_logged_in_|wp\-postpass_|woocommerce_items_in_cart|woocommerce_cart_hash)")
B

Rufe Zeile 23 deiner Konfigurationsdatei auf und setze $rocket_bypass auf 0 (anstatt 1).

Egal, ob du Möglichkeit A oder B nutzt, nach dem Bearbeiten der Konfigurationsdatei musst du NGINX neu starten!