2015-01-15 31 views
0

在这里我的网站我安装了osclass script.it需要是多语言的,所以,翻译成当地的僧伽罗语(si_SI)。类别也用僧伽罗语和英语进行了更新。但在前端切换成语言时,其类别只能用英文显示。是否有人在其他语言中显示类别的解决方案?Osclass类别翻译不显示前端

  1. 前端用僧伽罗语 http://i60.tinypic.com/17cy9j.jpg“前端用僧伽罗语”

  2. 前端用英语 http://i59.tinypic.com/314s1u1.jpg“用英语前端”

回答

2

Osclass错误。他们为类别生成Bad SQL:

SELECT * 
FROM ((SELECT a.*, b.*, c.i_num_items, FIELD(fk_c_locale_code, 'sv_SE') as locale_order 
FROM (oc_t_category as a) 
INNER JOIN oc_t_category_description as b ON a.pk_i_id = b.fk_i_category_id 
LEFT JOIN oc_t_category_stats as c ON a.pk_i_id = c.fk_i_category_id 
WHERE b.s_name != '' 
AND a.b_enabled = 1 
ORDER BY locale_order DESC) dummytable) 
GROUP BY pk_i_id 
ORDER BY i_position ASC 

这是瑞典的SQL示例。 SQL本身按locale_order排序行。哪一个是1 - sv_SE和0 - en_US。只需尝试按pk_i_id进行分组。在一些mysql配置上它可以工作,但有些不是。

如MySQL参考手册(https://dev.mysql.com/doc/refman/5.0/en/group-by-extensions.html)中所述,由GROUP BY扩展选择的值是不确定的 - 不保证在最终结果中选择具有不同值的第一行(top-> down)。

本帖未提供解决方案。

+0

我最近对这个问题提出了一个拉请求:https://github.com/osclass/Osclass/pull/2034。不过,希望很快就会合并。 – Hussard