Realizar acción al confirmar el pedido con Prestashop

Una «manera rápida» de programar una acción en el momento que el usuario completa el pedido de Prestashop, es editando el archivo «OrderConfirmationController.php» ubicado en: /controllers/front/OrderConfirmationController.php.

Podemos meter a cañonazo (ya que no es la forma más correcta) nuestro código en el método «init()»

public function init()
{
    parent::init();

    $this->id_cart = (int)(Tools::getValue('id_cart', 0));
    $is_guest = false;
    
    //El resto del código del método... 

    //Nuestro propio código, ejemplo, insertamos un dato en una tabla llamada ps_test:
    $sql = 'INSERT INTO `'._DB_PREFIX_.'test` (id_customer,id_order,mensaje,fecha_pedido, reference) VALUES (' . $order->id_customer. ','. $this->id_order .', \'Insertamos en base de datos cuando el usuario completa su pedido\' ,\'' . date('Y-m-d H:i:s') . '\',\''.$order->reference.'\')';
    Db::getInstance()->Execute($sql);  

}

Tu opinión es importante para mi, ¿Te ha resultado útil este artículo?

2 Comments

Fer

Hola Jedi Kike,
No soy muy ducho en esto del PHP y estoy aprendiendo también a base de «cañonazos» jejeje. Siempre ando acojonado por si me cargo todo.
Si meto un cañonazo sería conveniente con una copia del archivo metida en la carpeta override?

Muchas gracias.

Reply
kike

Hola Fer!
Muchas gracias por escribir 🙂
Si, efectivamente, lo suyo sería ponerlo en override.

Saludos!

Reply

Responder a kike Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*