So erstellen Sie programmgesteuert eindeutige Gutscheincodes in WooCommerce
Veröffentlicht: 2020-07-06In unserem vorherigen Beitrag haben wir besprochen, wie man den Gutscheincode automatisch auf den WooCommerce-Warenkorb anwenden kann. Dort haben wir einen generischen Gutscheincode verwendet, der im Menü WooCommerce -> Gutscheine für alle Bestellungen der verschiedenen Kunden erstellt wird.
Aber manchmal möchten Sie als Ladenbesitzer für bestimmte Situationen einen eindeutigen Gutscheincode für jeden Kunden auf Ihrer Website erstellen . Nehmen wir zwei Beispiele, bei denen Sie möglicherweise einzigartige Gutscheincodes erstellen möchten.
Beispiel 1:
Als Online-Shop-Besitzer ist das Schlimmste, was Sie im Kaufzyklus eines Kunden erleben können, der Abbruch des Einkaufswagens. Ca. 68 bis 70 % der Warenkörbe auf einer Website werden von Benutzern abgebrochen, und dafür kann es mehrere Gründe geben. Einer der häufigsten Gründe sind die höheren Preise der Produkte oder die zusätzlichen Kosten wie hohe Versandkosten, die im Allgemeinen an der Kasse angezeigt werden und nicht vorher.
Um also den Warenkorbabbruch zu minimieren und möglichst viele Benutzer in Kunden umzuwandeln, können Sie sie einfach mit einigen Rabattgutscheinen für ihren Kauf anziehen. Auf diese Weise können Sie Ihre aufgegebenen Warenkörbe in wiederhergestellte Warenkörbe umwandeln.
In solchen Fällen ist es am besten, einen eindeutigen Gutscheincode mit einem einzigen Nutzungslimit für jeden verlassenen Warenkorb bereitzustellen, um eine mehrfache Verwendung des Codes zu vermeiden.
Beispiel 2:
Ein weiteres Beispiel für die Erstellung einzigartiger Gutscheincodes wäre für die Kunden, die einmal in Ihrem Geschäft gekauft haben, aber um sie dazu zu bringen, mehr zu kaufen, werden Sie es vorziehen, ihnen einige Rabattgutscheine für ihren nächsten Einkauf zu senden. Wenn Sie hier also einen allgemeinen Gutscheincode für alle Kunden erstellen, können sie die Gutscheine an andere ihnen bekannte Personen weitergeben, die von ihnen für ihre neuen Einkäufe verwendet werden können.
Hier kann also ein Gutscheincode, der für wiederkehrende Kunden erstellt wird, missbraucht werden. Um dies zu vermeiden, ist es besser, für jeden Kunden einen eindeutigen Gutscheincode mit einem Nutzungslimit von 1 zu erstellen.
Es ist nicht möglich, eindeutige Gutscheincodes manuell für jeden Kunden über das Menü WooCommerce -> Gutscheine zu erstellen. Die andere Option wäre also das Hinzufügen eines Code-Snippets zum gleichzeitigen Erstellen mehrerer Coupons für verschiedene Benutzer, und wir werden in unserem Beitrag diskutieren, wie dies erreicht werden kann.
2 Möglichkeiten, einzigartige Gutscheincodes in WooCommerce zu erstellen
Der erste Schritt zum Erstellen eines eindeutigen Gutscheincodes wäre das Erstellen einer zufälligen Zeichenfolge für jeden Gutschein. Das würde mit dem folgenden Code erstellt werden.
$zeichen = "ABCDEFGHJKMNPQRSTUVWXYZ23456789"; $char_length = "8"; $random_string = substr( str_shuffle( $characters ), 0, $char_length );
Hier gibt die Funktion substr() den Teil der Zeichenfolge zurück, der durch die Parameter start und length angegeben ist, und die Funktion str_shuffle() mischt die übergebene Zeichenfolge nach dem Zufallsprinzip.
Nach dem Generieren der eindeutigen Zeichenfolge besteht der nächste Schritt darin, den Gutscheincode mithilfe eines Code-Snippets zu erstellen. Wir werden 2 Möglichkeiten besprechen, mit denen Sie Gutscheincodes programmgesteuert in WooCommerce erstellen können.
1. Verwenden der Funktion wp_insert_post()
Die erste Möglichkeit, den Gutscheincode programmgesteuert hinzuzufügen, ist die Verwendung der Funktion wp_insert_post(), mit der Sie einen WordPress-Beitrag hinzufügen oder aktualisieren können. In unserem Fall fügen wir also mit dieser Funktion einen Beitrag mit dem Beitragstyp shop_coupon hinzu. Um das Meta für die erstellten Coupons hinzuzufügen, wird die Funktion update_post_meta() verwendet. Sie müssen den folgenden Code zur Datei functions.php des Child-Themes hinzufügen oder ein beliebiges Code-Snippets-Plugin verwenden.
$coupon_code = 'UNIQUECODE'; // Code, der mit dem zufälligen String-Snippet erstellt wurde. $betrag = '10'; // Menge $discount_type = 'Prozent'; // Typ: Fixed_cart, Prozent, Fixed_Product, Percent_Product $gutschein = array( 'post_title' => $coupon_code, 'post_content' => '', 'post_status' => 'veröffentlichen', 'post_author' => 1, 'post_type' => 'shop_coupon' ); $new_coupon_id = wp_insert_post( $coupon ); // Metadaten hinzufügen update_post_meta( $new_coupon_id, 'discount_type', $discount_type ); update_post_meta( $new_coupon_id, 'coupon_amount', $amount ); update_post_meta( $new_coupon_id, 'individual_use', 'no' ); update_post_meta( $new_coupon_id, 'product_ids', '' ); update_post_meta( $new_coupon_id, 'exclude_product_ids', '' ); update_post_meta( $new_coupon_id, 'usage_limit', '' ); update_post_meta( $new_coupon_id, 'expiry_date', '' ); update_post_meta( $new_coupon_id, 'apply_before_tax', 'yes' ); update_post_meta( $new_coupon_id, 'free_shipping', 'no' );
2. Verwendung der WooCommerce-Rest-API
Eine andere Möglichkeit, Gutscheincode programmgesteuert hinzuzufügen, ist die Verwendung der WooCommerce-Rest-API, die vom Plugin selbst bereitgestellt wird. WooCommerce bietet eine vollständige Anleitung für die Rest-API, einschließlich Authentifizierung, Datenabruf, Coupons, Bestellungen usw., aber als Referenz finden Sie unten ein kleines Snippet, das Sie für die Erstellung von Couponcodes verwenden können.

require_once __DIR__ . '/vendor/autoload.php'; Verwenden Sie Automattic\WooCommerce\Client; Verwenden Sie Automattic\WooCommerce\HttpClient\HttpClientException; $woocommerce = neuer Kunde( 'https://beispiel.com', 'consumer_key', 'consumer_secret', [ 'wp_api' => wahr, 'version' => 'wc/v3' ] ); $daten = [ 'code' => '10off', 'discount_type' => 'Prozent', 'Betrag' => '10', 'individual_use' => wahr, 'exclude_sale_items' => wahr, 'minimum_amount' => '100,00' ]; $woocommerce->post( 'Coupons', $data );
Dies ist ein einfaches Code-Snippet zum Erstellen eines Gutscheincodes für 10 % Rabatt auf eine Bestellung mit einem Bestellwert von mehr als 100 $. Der Gutscheincode lautet „10off“ und kann nur von einem Kunden verwendet werden. Dies sind nur die grundlegenden Eigenschaften, die für die Erstellung des Gutscheincodes erforderlich sind, aber wenn Sie einige zusätzliche Eigenschaften hinzufügen möchten, finden Sie hier die Liste dafür.
id – ( int ) Eindeutiger Bezeichner für das Objekt .
code – (string)(Erforderlich) Gutscheincode.
Betrag – (String) Der Rabattbetrag. Sollte immer numerisch sein, auch wenn ein Prozentsatz eingestellt wird.
date_created – (date-time) Das Datum, an dem der Gutschein erstellt wurde, in der Zeitzone der Website.
date_created_gmt – (date-time) Das Datum, an dem der Coupon erstellt wurde, als GMT.
date_modified – (date-time) Das Datum, an dem der Coupon zuletzt geändert wurde, in der Zeitzone der Website.
date_modified_gmt – (date-time) Das Datum, an dem der Coupon zuletzt geändert wurde, als GMT.
discount_type – (Zeichenfolge) Bestimmt die Art des Rabatts, der angewendet wird. Optionen: Prozent, Fixed_cart und Fixed_product. Standard ist fixed_cart .
description – (string) Beschreibung des Gutscheins.
date_expires – (Zeichenfolge) Das Datum, an dem der Gutschein abläuft, in der Zeitzone der Website.
date_expires_gmt – (String) Das Datum, an dem der Gutschein abläuft, als GMT.
usage_count – (int) Wie oft der Coupon bereits verwendet wurde.
individual_use – (bool) Wenn wahr, kann der Coupon nur einzeln verwendet werden. Andere angewendete Coupons werden aus dem Warenkorb entfernt. Standard ist false .
product_ids – (Array) Liste der Produkt-IDs, für die der Gutschein verwendet werden kann.
Excluded_product_ids – (Array) Liste der Produkt-IDs, für die der Gutschein nicht verwendet werden kann.
usage_limit – (int) Wie oft der Gutschein insgesamt verwendet werden kann.
usage_limit_per_user – (int) Wie oft der Gutschein pro Kunde verwendet werden kann.
limit_usage_to_x_items – (int) Maximale Anzahl von Artikeln im Warenkorb, auf die der Gutschein angewendet werden kann.
free_shipping – (bool) Wenn wahr und die kostenlose Versandmethode einen Coupon erfordert, ermöglicht dieser Coupon den kostenlosen Versand. Standard ist false .
product_categories – (Array) Liste der Kategorie-IDs, für die der Gutschein gilt.
Excluded_product_categories – (Array) Liste der Kategorie-IDs, für die der Gutschein nicht gilt.
Exclude_sale_items – (bool) Wenn wahr, wird dieser Gutschein nicht auf Artikel mit Sonderpreisen angewendet. Standard ist false .
minimum_amount – (string) Mindestbestellwert, der im Warenkorb sein muss, bevor der Gutschein gilt.
maximum_amount – (string) Maximal zulässiger Bestellbetrag bei Verwendung des Gutscheins.
email_restrictions – (Array) Liste der E-Mail-Adressen, die diesen Gutschein verwenden können.
used_by – (Array) Liste der Benutzer-IDs (oder Gast-E-Mail-Adressen), die den Gutschein verwendet haben.
meta_data – (Array) Metadaten.
Fazit
Die oben genannten Codeschnipsel sind nur ein Beispiel dafür, wie man den Gutscheincode erstellt. Um sie auf Ihrer Website zu verwenden, müssen sie an alle erforderlichen Hooks oder Filter angehängt werden. Zum Beispiel kann es an jedem Haken am Einkaufswagen verwendet werden, während Sie die Aufgabe des Einkaufswagens verfolgen, oder es kann im Cron-Job verwendet werden, der jede Woche ausgeführt wird, um E-Mail-Updates an Ihre Kunden zu senden.
Profitieren Sie von einzigartigen Gutscheincodes und machen Sie einige zufriedene wiederkehrende Kunden für Ihre Website.