Shockrate

woocommerce - N.Ordine

Jan 21st, 2021 (edited)
35
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.20 KB | None | 0 0
  1. // inserito in functions.php del tema
  2.  
  3.  
  4. add_action('woocommerce_checkout_create_order', 'before_checkout_create_order', 20, 2);
  5.  
  6. function before_checkout_create_order( $order, $data ) {
  7. $payment_method=$order->get_payment_method();
  8. $status = $order->get_status();
  9. if ($payment_method != "cod" && $status == "pending" || $status == "cancelled")
  10. {
  11. $prefix = 'IP-';
  12.  
  13. $chiave = "finti";
  14. $new_ordewr_id = update_number($chiave);
  15.  
  16. $new_order_id = $prefix.$new_ordewr_id;
  17. }else{
  18. $chiave = "ordini";
  19. $new_ordewr_id = update_number($chiave);
  20.  
  21. $new_order_id = $new_ordewr_id;
  22. }
  23.  
  24. $order->update_meta_data( '_order_number', "$new_order_id" );
  25.  
  26. }
  27.  
  28.  
  29.  
  30. function update_number($tipo){
  31. global $wpdb;
  32. $progressivo = $wpdb->get_results("SELECT valore FROM progressivi WHERE chiave = '$tipo'");
  33. $val = $progressivo[0]->valore;
  34. $newval = $val+1;
  35. $wpdb->query( $wpdb->prepare("
  36. UPDATE progressivi
  37. SET valore = $newval
  38. WHERE chiave = '$tipo'")
  39. );
  40.  
  41.  
  42. return $newval;
  43. }
  44.  
Add Comment
Please, Sign In to add comment