Ich entwickle eine Anwendung mit WooCommerce Rest API v3
. Jetzt versuche ich, Gutscheine von meiner WooCommerce-Website in meine Anwendung zu integrieren. Ich erstelle Bestellungen und wende Coupons wie diesen an
"coupon_lines":[{
'code'=>'coupon1',
'amount'=>'1.00'
}]
Ich habe ein Nutzungslimit pro Benutzer auf der Woocommerce-Website festgelegt.
Wenn ich direkt auf der Website bestellt habe, werden die Nutzungsbeschränkungen korrekt angewendet. dh ein Benutzer kann einen Gutschein nicht verwenden, wenn ein Limit erreicht ist. Aber wenn ich eine Bestellung über die REST-API mache, werden die Einschränkungen nicht angewendet.
Außerdem habe ich eine Antwort von einem anderen Forum erhalten, die besagt, dass die Funktion zum Anwenden von Gutscheinen noch nicht über die Rest-API verfügbar ist. Aber beim Durchsehen des Codes von create_order
API-Endpunkt habe ich festgestellt, dass dort der Webhook zum Anwenden des Gutscheins aufgerufen wird.
do_action( 'woocommerce_order_add_coupon', $this->id, $item_id, $code, $discount_amount, $discount_amount_tax );
in add_coupon()
. Aber die habe ich nicht gefunden add_action('woocommerce_order_add_coupon',...)
. Kann mir jemand sagen, wo ich diese Aktionsdefinition schreiben soll, damit sie beim Aktualisieren von WooCommerce nicht überschrieben wird?
Ich habe eine Antwort von einem anderen Forum erhalten, die besagt, dass die Funktion zum Anwenden von Gutscheinen noch nicht über die Rest-API verfügbar ist. Aber als ich den Code des API-Endpunkts „create_order“ durchgesehen habe, habe ich festgestellt, dass der Webhook zum Anwenden von Gutscheinen dort aufgerufen wird. do_action( ‘woocommerce_order_add_coupon’, $this->id, $item_id, $code, $discount_amount, $discount_amount_tax ); in add_coupon(). Aber ich habe die add_action(‘woocommerce_order_add_coupon’,…) nicht gefunden. Kann mir jemand sagen, wo ich diese Aktionsdefinition schreiben soll, damit sie beim Aktualisieren von Woocommerce nicht überschrieben wird.
– SatheeshCK17
10. April 2016 um 4:45 Uhr
Schreiben Sie es in eine separate Plugin-Datei.
– Jack Robson
30. August 2018 um 18:42 Uhr