网站开发 · 2025年4月26日

zencart HTMLarea在某些小语种中不能使用

刚刚发现在zen cart网站后台启用了HTMLarea编辑器后,有的网站在产品编辑页面看不到编辑器的工具栏,有的会提示js错误。比如在danish,swedish两个语种的网站后台,这个HTMLarea编辑器就不能使用。

借助firefox浏览器的web developers和firebug插件,我发现有提示js错误,比如danish网站的错误提示是在htmlarea.js文件中出错(错误提示1),而swedish的网站则根本没加载到htmlarea/lang/sv.js文件(错误提示2),里面的内容是一些html而不是js代码。

firebug控制台的错误提示如下:

(错误提示1) this._doc is undefined

http://www.truereligiondanmark.eu/editors/htmlarea/htmlarea.js

Line 1739 HTMLArea.I18N.msg is undefined

http://www.truereligiondanmark.eu/editors/htmlarea/htmlarea.js

Line 609   (错误提示2) HTMLArea.I18N is undefined

zencart HTMLarea在某些小语种中不能使用插图 var plugin_lang = dir + “/lang/” + HTMLArea.I18N.lang + “.js”;

我想htmlarea/lang/目录下的文件应该是一些基于js的翻译数组,果然打开一看确实一些翻译。有可能是翻译文件的编码问题,有的则根本就没有对应的翻译文件,如swedish对应的文件应该是htmlarea/lang/sv.js但是在这个目录没找到。反正后台翻译不翻译无所谓,于是

cd htmlarea/lang
cp en.js sv.js

刷新一下swedish语种网站的后台,果然可以了。经测试对所有的其它语言都可以采用这个办法来处理。