Prestashop blocklayered reloadContent()返回错误的语言

时间:2016-09-19 10:58:05

标签: prestashop

我在使用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

1 个答案:

答案 0 :(得分:0)

/modules/blocklayered/blocklayered.php中的reloadContent()函数调用以下函数:

/ podules/blocklayered/blocklayered.php中的

ajaxCall()

此函数使用$ cookie-> id_lang来获取当前语言ID,尝试调试此变量的值。

您也可以尝试使用$ this-> context-> language-> id替换它,它可能会解决您的问题。