EcommerceKategorie

Wie Du eine Liste der Sale-Produkte in WooCommerce erhältst

4 min lesen
GoDaddy Deutschland Content Team

WooCommerce ermöglicht es dir, Produktlisten abzurufen - egal ob einfache Produkte, variable Produkte oder vorgestellte Produkte. Auch die Filterung nach vorrätigen oder nicht vorrätigen Produkten ist problemlos möglich. Etwas kniffliger wird es jedoch, wenn du eine Liste aller WooCommerce-Produkte im Sale erstellen möchtest. Das liegt daran, dass für Sale-Produkte, je nach Produkttyp, unterschiedliche Metaschlüssel verwendet werden, um den Verkaufsstatus zu ermitteln.

Schauen wir uns ein paar Möglichkeiten an, wie Du WooCommerce-Produkte im Sale angezeigt bekommen kannst.

Starten Sie Ihr Geschäft in wenigen Minuten mit GoDaddy Airo™

Prüfe den Verkaufsstatus 

In diesem Beitrag erfährst Du zunächst, wie Du alle WooCommerce Produkte im Sale abrufen kannst. Wenn Du nur den Verkaufsstatus eines Produkts überprüfen möchten, gibt es eine sehr einfache Möglichkeit, dies zu tun:

Wir sprechen stattdessen über die Abfrage aller WooCommerce-Produkte im Sale.

Lasse dir alle WooCommerce-Produkte im Sale anzeigen

Viele Entwickler möchten Sale-Produkte abfragen, um die Daten in einer benutzerdefinierten Vorlage oder auf einer Archivseite anzeigen zu können.

Wenn Du alle reduzierten Produkte auf einer "Sale"-Seite oder ähnlichem angezeigt bekommen und dafür den WooCommerce-Loop nutzen möchtest, geht das ganz einfach über den Shortcode für Sale-Produkte. Es sind keine komplexen Abfragen oder zusätzliche Codes erforderlich:

[[sale_products columns=„3“ per_page=„12“]]

So übernimmt WooCommerce die gesamte Arbeit für Dich. Falls du also einfach nur ein Archiv mit WooCommerce-Produkten im Sale erhalten möchtest, nutze diesen Shortcode.

Frage WooCommerce-Produkte im Sale ab

Um deine reduzierten WooCommerce-Produkte abzufragen kannst du [WP_Query] nutzen. Dabei ist es allerdings wichtig, wie du das tust. In der Regel wird empfohlen, den Meta-Schlüssel [_sale_price] zu verwenden, um festzustellen, welche Produkte im Angebot sind.

Der Haken an diesem Code ist aber, dass er variable Produkte nicht berücksichtigt und deshalb nur einfache Produkte angezeigt werden. Kein Problem!  Fügen wir einfach den Meta-Schlüssel [_min_variation_sale_price] hinzu, der auch variable Produkte mit einbezieht. Diese beiden Schlüssel kannst du dann mit einer OR-Verknüpfung abfragen, um Produkte mit einem der beiden Metaschlüssel zu erhalten.

Das funktioniert perfekt und ermöglicht dir, weitaus mehr als nur die WooCommcere- im Sale anzeigen zu lassen. Das heißt aber nicht, dass dies die beste Methode ist, um deine Sale-Produkte anzeigen zu lassen.

Kehren wir zu dem Shortcode zurück, den wir zuvor erwähnt haben, um zu sehen, wie WooCommerce Produkte im Sale anzeigt. 

Hier läuft es etwas anders. In diesem Beispiel wird die Funktion [wc_get_product_ids_on_sale()] verwendet, die ein Array mit den IDs der Produkte zurückgibt, die im Angebot sind. Mit dieser einfache Abfrage können die Verkaufsprodukte angezeigt werden:

Dies ist ein effizienterer Weg, um reduzierte WooCommerce-Produkte abzufragen.

Warum ist es also besser?

  • Es ist leichter für SQL,  einfach [post__in] als Query auszuführen, als die komplizierte Abfrage nach Metaschlüsseln
  • Diese Methode verwendet eine separate Abfrage, um die Produkt-IDs im Sale zu erhalten. Diese kann geparst und optimiert werden (in Verbindung mit dem nächsten Punkt)
  • Die Abfrage nach [post__in], wenn wir die IDs bereits haben, ist viel, viel schneller, weil die Funktion [wc_get_product_ids_on_sale] einen Transienten verwendet, d.h. diese Abfrage wird übersprungen, wenn der Transient existiert

Die Moral von der Geschichte ist, dass WooCommerce (und WordPress) eine Menge für dich optimiert. Bevor du also deine eigene Abfrage erstellst, schaue zunächst, wie WooCommerce damit umgeht. Vielleicht gibt es ähnliche Anwendungsfälle oder eine Funktion, die einen Teil der Abfrage für dich erledigen kann.

Bildnachweis: Tamanna Rumee auf unsplash.com

Produktempfehlungen: