Como añadir variables a la cookie de Prestashop
Una cookie (o galleta informática) es una pequeña información enviada por un sitio web y almacenada en el navegador del usuario, de manera que el sitio web puede consultar la actividad previa del usuario.
Prestashop almacena información referente al usuario en cookies para llevar el control de usuario y mantenerlo logeado durante la navegación por la tienda.
A partir de la versión 1.5.x debemos saber que tenemos disponible el objecto Context que dispone de mucha información sobre el contexto en los controladores y módulos. En un artículo anterior sobre Prestashop, hablamos de como se usa el objecto Context.
En este artículo vamos a ver lo fácil que es añadir nuevas variables a la cookie de prestashop.
Si hacemos un print_r($this->context->cookie) en cualquier controlador o módulo del objecto cookie veremos un arreglo como el siguiente:
Cookie Object
(
[_content:protected] => Array
(
[date_add] => 2014-05-30 17:47:35
[id_lang] => 1
[id_currency] => 1
[id_guest] => 2
[id_connections] => 10
[id_compare] => 0
[id_customer] => 2
[customer_lastname] => Aguilar
[customer_firstname] => Jose
[logged] => 1
[is_guest] =>
[passwd] => f0587eed7249544672456850f06f303c
[email] => jaguilar@jose-aguilar.com
[id_cart] => 11
[checksum] => -670403846
)
[_name:protected] => 50611aebd1c5abb315ba70ce0ff2bb16
[_expire:protected] => 1403192876
[_domain:protected] =>
[_path:protected] => /formacion/
[_cipherTool:protected] => Rijndael Object
(
[_key:protected] => NADLzkb5Xp5vKBIz5aNyWOmWfCUIZ0G5
[_iv:protected] => ��nI
���fƬǷ
)
[_modified:protected] =>
[_allow_writing:protected] => 1
[_salt:protected] => CKZby4Mz
[_standalone:protected] =>
)
Vemos que en la cookie se almacena, entre otras cosas, información referente al usuario que está en linea.
Si nosotros ahora quisiéramos añadir más información a la cookie tan solo deberíamos hacer un set de la misma de la siguiente forma:
$this->context->cookie->__set('nickname', 'josely');
Obteniendo como resultado:
Cookie Object
(
[_content:protected] => Array
(
[date_add] => 2014-05-30 17:47:35
[id_lang] => 1
[id_currency] => 1
[id_guest] => 2
[id_connections] => 10
[id_compare] => 0
[id_customer] => 2
[customer_lastname] => Aguilar
[customer_firstname] => Jose
[logged] => 1
[is_guest] =>
[passwd] => f0587eed7249544672456850f06f303c
[email] => jaguilar@jose-aguilar.com
[id_cart] => 11
[checksum] => -670403846
[nickname] => josely
)
[_name:protected] => 50611aebd1c5abb315ba70ce0ff2bb16
[_expire:protected] => 1403193095
[_domain:protected] =>
[_path:protected] => /formacion/
[_cipherTool:protected] => Rijndael Object
(
[_key:protected] => NADLzkb5Xp5vKBIz5aNyWOmWfCUIZ0G5
[_iv:protected] => ��nI
���fƬǷ
)
[_modified:protected] => 1
[_allow_writing:protected] => 1
[_salt:protected] => CKZby4Mz
[_standalone:protected] =>
)
Para acceder a la nueva variable lo haremos de la siguiente forma:
echo $this->context->cookie->nickname;
Hola, necesito una asesoría.
Tenemos un mudulo que crea una cookie muy extensa y que no está permitido según la última actualización de Google Chrome.
¿Nos pueden ayudar a solucionar ese tema? ¿Cuál es el costo y tiempo de trabajo?
Hola,
Envía un mensaje al centro de soporte técnico situado en:
https://www.jamodules.com/prestashop-addons/es/soporte
Saludos