0

我的网站在这里安装了 osclass 脚本。它需要是多语言的,所以翻译成当地的僧伽罗语(si_SI)。类别也更新了僧伽罗语和英语。但是在前端切换到语言时,其类别仅显示为英语。有没有人用其他语言显示类别的解决方案?

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

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

4

2 回答 2

2

奥斯类错误。它们为以下类别生成 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 扩展选择的值是不确定的 - 首先不是“保证”最终结果中将选择具有不同值的行(自上而下)。

这篇文章中没有提供解决方案。

于 2016-05-29T15:14:44.713 回答
0

当您在选择元素中回显类别时,它可能需要准备好翻译。例如<?php _e('categoryName', 'translationName');?>

翻译和编辑语言文件 Osclass

于 2015-07-22T05:56:09.453 回答