Estoy intentando implementar un popup personalizado en mi tienda PrestaShop para mostrar ofertas especiales. Mi idea era hacerlo directamente desde un hook en un módulo propio, para tener control total. Sin embargo, no consigo que funcione de forma estable. A veces el popup aparece, otras veces no, y en ocasiones incluso rompe el layout de la página o me lanza errores de Smarty.
He intentado colocar esto en el hook displayHeader de mi módulo, pero no hay forma. ¿Alguna idea de por qué puede estar fallando o cómo hacerlo más robusto?
Aquí tenéis un extracto de cómo lo estoy intentando hacer en el archivo principal de mi módulo (mymodule.php):
// modules/mymodule/mymodule.php - dentro del método hookDisplayHeader
public function hookDisplayHeader($params)
{
$this->context->smarty->assign([
'my_popup_message' => '¡Últimas unidades, aprovecha!',
'my_popup_active' => true,
]);
return $this->display(__FILE__, 'views/templates/hook/popup_template.tpl');
}
El problema es que a veces el popup no se carga, o si cambio de página me da error de Smarty por variables no definidas. No consigo que sea estable.