Actiunea woocommerce_order_status_completed nu functioneaza - Solutii

13 feb. 2014, 09:04:36
Vizualizări: 14.3K
Voturi: 1

Dezvolt o extensie WooCommerce unde trebuie sa execut anumite actiuni dupa ce o comanda este finalizata cu succes. Pentru asta am inceput sa scriu cod. Am folosit urmatorul cod in constructorul clasei mele.

add_action('woocommerce_order_status_completed',array(&$this,'insert_points'));

Apoi am definit functia astfel:

public function insert_points($order_id)
{
   global $woocommerce, $table_prefix;
   $order = new WC_Order($order_id);
   var_dump($order);
}

Dar nu functioneaza. Poate cineva sa ma ajute cu un exemplu de cod functional.

2
Comentarii

Folosește ghilimele simple ', nu ghilimele tipografice.

fuxia fuxia
13 feb. 2014 15:11:13

Aș spune că această întrebare nu este în afara subiectului, este specifică WordPress, nu este generică, iar WooCommerce nu este un plugin de la terți.

Mister Woyng Mister Woyng
24 nov. 2022 10:33:45
Toate răspunsurile la întrebare 1
5

Poți încerca asta

add_action('woocommerce_order_status_completed',array(&$this,'insert_points'),10,1);

Funcția add_action are un ultim argument care specifică câte argumente să fie transmise funcției din hook.

13 feb. 2014 09:10:39
Comentarii

Nu, nu funcționează. :( Există vreo altă soluție??

Jaykumar Patil Jaykumar Patil
13 feb. 2014 09:15:30

@JaykumarPatil "woocommerce_payment_complete" este de asemenea un hook relevant.

Rajeev Vyas Rajeev Vyas
13 feb. 2014 09:24:17

Încă nu funcționează și vreau să rulez codul doar după ce statusul este schimbat.

Jaykumar Patil Jaykumar Patil
13 feb. 2014 11:34:18

Mulțumesc pentru suport. De fapt, în loc să afișez datele, am inserat niște valori în baza de date și a funcționat. Mulțumesc pentru ajutor.

Jaykumar Patil Jaykumar Patil
19 feb. 2014 11:55:49

eu folosesc asta pentru plățile cu cardul woocommerce_order_status_processing_to_completed

nodws nodws
19 feb. 2020 23:32:17