Jump to content

El "hookActionProductAdd" no se ejecutá


Recommended Posts

Buen día para todos.

Actualmente me encuentro en un desarrollo en la versión 1.7.5.2 de PrestaShop, y necesito obtener el evento cada vez que se realiza una adición, una edición o una eliminación de un producto dentro de la plataforma (en el BackOffice de la tienda).

Inicialmente necesito que me guarde un log mi base de datos donde me indique que paso por esta función, y mas delante incluiré mas funcionalidades.

Intente crear un modulo que me obtuviera el evento a través del HOOK -> "ActionProductAdd" pero al verificar mi base de datos, no veo que se haya guardado un log de tipo "ActionProductAdd", sino por el contrario veo que se me guardaron 3 logs de tipo "ActionProductUpdate", y esto me genera problemas a futuro en mi lógica, ya que necesito obtener en momentos distintos el evento cuando se haga la adición de un producto y cuando se realice una edición de un producto.

Espero alguien tenga algún indicio sobre el por que de este inconveniente, y por que razón no se esta disparando el "hookActionProductAdd".

Link to comment
Share on other sites

  • 3 weeks later...

Salut,

Nous vous suggérons de vérifier si votre module enregistre correctement les hooks. Dans le fichier principal de votre module, vous devriez avoir quelque chose comme :
public function install()
{
return parent::install() &&
$this->registerHook('actionProductAdd') &&
$this->registerHook('actionProductUpdate') &&
$this->registerHook('actionProductDelete');
}
Assurez-vous également d'avoir défini les méthodes. Par exemple :
public function hookActionProductAdd($params)
{
// Enregistrer dans la base de données
Db::getInstance()->insert('my_log_table', [
'event' => 'ActionProductAdd',
'product_id' => (int)$params['id_product'],
'date_add' => date('Y-m-d H:i:s')
]);
}
Nous espérons que cela vous aidera.

Link to comment
Share on other sites

Aqui tienes acceso a la documentación de los hooks

https://devdocs.prestashop-project.org/1.7/modules/concepts/hooks/list-of-hooks/

Para registrar trazas de logs puedes utilizar 

PrestaShopLogger::addLog("is only an error trace ", 1);

El 1 correspondería al significado de los niveles de gravedad

1.Sólo informativo
2.Advertencia
3.Error
4.Problema grave (error crítico).

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...