无法在prestashop Context :: getContext()-> cookie中找到cookie值,但是显示在$ _COOKIE中?

时间:2019-03-28 05:47:31

标签: php prestashop smarty prestashop-1.6 prestashop-1.7

我正在创建一个使用第三方Js的模块。那个JS在浏览器中创建一个cookie。在后端,我想借助prestashop cookie类(Context::getContext()->cookie / $this->context->cookie)读取该cookie,但是找不到该cookie值,如果我使用php default $_COOKIE,它可以正常工作。

例如:我的Cookie密钥是xyz,值是123456abc。 当我使用print_r($_COOKIE)时,它会打印 [xyz] =“ 123456abc”

但是当我使用prestashop Cookie时,它不会打印任何内容。

1 个答案:

答案 0 :(得分:0)

这是因为您最有可能写入具有不同名称或不同域/子域的cookie。

PrestaShop管理员cookie名称为 psAdmin ,而前端名称为 ps-s1

使用Google Chrome浏览器,按 F12 并转到:Applications > Cookies > www.yourstore.com

现在您应该看到所有不同的cookie名称和值,并确保使用正确的cookie名称和值。

另一种解决方案是直接从JS调用PrestaShop控制器文件(使用Ajax)以通过PHP设置cookie值。