我在使用prestashop和blocklayered模块时遇到问题,我店的默认语言是法语(id_lang = 1)。
以下是获取错误的步骤: 我切换到英文(id_lang = 4)并转到产品列表页面,所有产品都是用英文写的,这里没问题。 然后,每次我尝试使用blocklayered过滤器时,返回的所有结果都是用法语而不是英语写的。
我在标题和product-list.tpl中添加了var_dump,以查看$ cookie-> id_lang的值。它们都设置为4(英语)。在使用blocklayered之后,我仍然在标题BUT中将id_lang设置为4,而product-list中的那个现在设置为1,这是法语id_lang。
PS版:1.6.1.0
Blocklayered版本:2.1.3
答案 0 :(得分:0)
/modules/blocklayered/blocklayered.php中的reloadContent()函数调用以下函数:
/ podules/blocklayered/blocklayered.php中的ajaxCall()
此函数使用$ cookie-> id_lang来获取当前语言ID,尝试调试此变量的值。
您也可以尝试使用$ this-> context-> language-> id替换它,它可能会解决您的问题。