Wishlist
Die Wunschliste ermöglicht es Kunden, Produkte für später zu speichern. Sie funktioniert sowohl für angemeldete Kunden als auch für Gäste.

Modul aktivieren
Section titled “Modul aktivieren”Gehen Sie zu WooCommerce > Polski > Storefront-Module und aktivieren Sie die Option Wishlist. Nach der Aktivierung erscheint auf jedem Produkt ein Herzsymbol, mit dem es zur Liste hinzugefügt werden kann.
Unterstützung für Gäste und angemeldete Benutzer
Section titled “Unterstützung für Gäste und angemeldete Benutzer”Gäste (nicht angemeldet)
Section titled “Gäste (nicht angemeldet)”Für Gäste wird die Wunschliste im localStorage des Browsers gespeichert. Die Daten stehen sofort ohne Serveranfragen zur Verfügung. Nach der Anmeldung wird die localStorage-Liste automatisch mit der Datenbank synchronisiert - Produkte gehen nicht verloren.
Angemeldete Benutzer
Section titled “Angemeldete Benutzer”Für angemeldete Kunden werden die Daten in der Tabelle wp_usermeta unter dem Schlüssel _polski_wishlist gespeichert. Dadurch ist die Liste nach der Anmeldung auf jedem Gerät verfügbar.
Kundenkonto
Section titled “Kundenkonto”Das Modul fügt im Bereich Mein Konto von WooCommerce einen neuen Reiter Wunschliste hinzu. Der Kunde sieht:
- Produkt-Miniaturansicht
- Name mit Link zur Produktseite
- Preis (aktuell, inklusive Aktionen)
- Verfügbarkeitsstatus (auf Lager / nicht auf Lager)
- Schaltfläche In den Warenkorb
- Schaltfläche Von der Liste entfernen
Der Reiter ist nur sichtbar, wenn das Modul aktiv ist. Der URL-Endpunkt lautet wishlist - z. B. ihrshop.de/my-account/wishlist/.
AJAX-Verhalten
Section titled “AJAX-Verhalten”Das Hinzufügen und Entfernen von Produkten aus der Liste erfolgt über AJAX - die Seite wird nicht neu geladen. Nach dem Klick auf das Herzsymbol:
- Das Symbol wechselt den Zustand (leer/gefüllt) mit einer CSS-Animation
- Eine AJAX-Anfrage wird an
admin-ajax.phpgesendet - Der Zähler am Symbol im Header aktualisiert sich in Echtzeit
Vom Modul verarbeitete AJAX-Aktionen:
| Aktion | Beschreibung |
|---|---|
polski_wishlist_add | Produkt zur Liste hinzufügen |
polski_wishlist_remove | Produkt von der Liste entfernen |
polski_wishlist_get | Gesamte Liste abrufen |
polski_wishlist_clear | Gesamte Liste leeren |
Shortcode [polski_wishlist]
Section titled “Shortcode [polski_wishlist]”Der Shortcode zeigt die Wunschlisten-Tabelle an beliebiger Stelle im Shop an.
Parameter
Section titled “Parameter”| Parameter | Typ | Standard | Beschreibung |
|---|---|---|---|
columns | string | all | Anzuzeigende Spalten (durch Komma getrennt) |
max_items | int | 50 | Maximale Anzahl der Produkte auf der Liste |
show_empty | string | yes | Ob eine Meldung angezeigt wird, wenn die Liste leer ist |
Anwendungsbeispiel
Section titled “Anwendungsbeispiel”[polski_wishlist columns="image,name,price,add_to_cart" max_items="20"]Verwendung in einem PHP-Template
Section titled “Verwendung in einem PHP-Template”echo do_shortcode('[polski_wishlist columns="image,name,price,add_to_cart"]');Verfügbare Spalten
Section titled “Verfügbare Spalten”image- Produkt-Miniaturansichtname- Produktname mit Linkprice- Preisstock- Lagerstatusadd_to_cart- Schaltfläche In den Warenkorbremove- Schaltfläche Von der Liste entfernendate_added- Hinzufügedatum
Schaltfläche auf der Produktseite
Section titled “Schaltfläche auf der Produktseite”Die Wunschlisten-Schaltfläche wird standardmäßig unter der Schaltfläche In den Warenkorb auf der Produktseite angezeigt. Die Position kann mit einem Filter geändert werden:
add_filter('polski/wishlist/button_position', function (): string { return 'before_add_to_cart'; // oder 'after_add_to_cart', 'after_summary'});Schaltfläche in der Produktliste
Section titled “Schaltfläche in der Produktliste”Auf Kategorie- und Archivseiten erscheint eine Herz-Schaltfläche in der Ecke der Produkt-Miniaturansicht. Diese kann in den Moduleinstellungen deaktiviert werden.
Shop-Header
Section titled “Shop-Header”Das Modul fügt dem Shop-Header (neben dem Warenkorb) ein Herzsymbol mit Zähler hinzu. Ein Klick öffnet ein Dropdown mit einer Vorschau der gespeicherten Produkte. Die Position des Symbols wird über einen Hook gesteuert:
add_action('polski/wishlist/header_icon', function (): void { // Eigene Symbolposition im Header});CSS-Styling
Section titled “CSS-Styling”Das Modul verwendet CSS-Klassen mit dem Präfix .polski-wishlist-. Wichtigste Klassen:
.polski-wishlist-button- Schaltfläche zum Hinzufügen/Entfernen.polski-wishlist-button--active- aktiver Zustand (Produkt ist auf der Liste).polski-wishlist-table- Listentabelle.polski-wishlist-count- Zähler im Header.polski-wishlist-empty- Meldung für leere Liste
Leistung
Section titled “Leistung”Die Wunschlisten-Daten angemeldeter Benutzer werden im Object Cache zwischengespeichert (falls verfügbar). Das HTML-Fragment der Schaltfläche wird über wp_cache_set() mit der Gruppe polski_wishlist zwischengespeichert. Der Cache wird nach dem Hinzufügen oder Entfernen eines Produkts automatisch geleert.
Fehlerbehebung
Section titled “Fehlerbehebung”Die Schaltfläche erscheint nicht auf dem Produkt - stellen Sie sicher, dass das Theme den Hook woocommerce_single_product_summary unterstützt. Einige Themes überschreiben die Standard-WooCommerce-Templates.
Die Liste synchronisiert sich nach der Anmeldung nicht - prüfen Sie, ob ein Caching-Plugin die Anmeldeseite aggressiv puffert. Deaktivieren Sie den Cache für die Seite my-account.
Das Header-Symbol wird nicht angezeigt - das Theme muss den Hook wp_nav_menu_items oder storefront_header unterstützen. Wenn Sie ein benutzerdefiniertes Theme verwenden, fügen Sie das Symbol manuell im Template hinzu.
Probleme melden: github.com/wppoland/polski/issues