2016-08-01 19 views
0

Ich versuche, eine Funktion auszulösen, wenn ein Auftrag abgeschlossen ist. Ich verwende diesen Code:WooCommerce eine Funktion auf Auftragsstatus auslösen kompletten

add_action('woocommerce_order_status_completed', array($this, 
    'payment_complete' 
), 1); 

und dann diese Funktion:

public function payment_complete($order_id) { 
    $this->generate_order_file($order_id); 
} 

Diese Funktion gemeint ist eine Auftragsdatei zu generieren, aber es ist gar nicht aufgerufen werden. Ich habe versucht, vorher bekommen sie eine Nachricht in das Fehlerprotokoll hinzuzufügen,

ich den WooCommerce Order Status Control Plugin verwenden, und Aufträge ändern automatisch bei Zahlung abzuschließen. Aus irgendeinem Grund wird die Aktion woocommerce_order_status_completed nicht ausgelöst.

Antwort

1

FUNCTION

function payment_complete($order_id, $old_status, $new_status){ 
     if($new_status == "completed") { 
      $this->generate_order_file($order_id); 
     } 
} 

HOOK

add_action('woocommerce_order_status_changed', array($this, 'payment_complete'), 99, 3); 

HINWEIS

Achten Sie darauf, dass der Haken ausgeführt wird. Ist ja, das wird funktionieren.

Viel Glück.

+0

Ich habe meinen Code mit dieser aktualisiert. Ich warte nur darauf, dass ein Kunde jetzt eine Bestellung aufgibt, um zu sehen, ob es brennt! Ich melde mich hier zurück, wenn ich herausfand – alexkwatson

+0

@alexkwatson okay sicher –

+0

das funktioniert nicht. Ich frage mich, warum Sie vorschlagen, $ $ new_status! = "Completed" ', sicherlich' $ new_status == "completed" 'ist richtig? Ich habe es auch versucht und trotzdem passiert nichts. @hemnath – alexkwatson

0

kann ich empfehlen Abfrage Monitor - https://wordpress.org/plugins/query-monitor/ - zu sehen, welche Haken auf Ihrer Seite geschossen haben.

+0

ich von so etwas wie dies dachte, aber das ist für die Forderung der aktuellen Seite nur. Der Haken, den ich ausgelöst haben muss, ist, wenn ein Kunde eine Bestellung aufgibt, auf die ich keine Kontrolle habe und die jederzeit passieren könnte – alexkwatson

Verwandte Themen