Magento在翻译上的bug可谓多入牛毛,有些地方你会发现无论你如何在CSV文件里配置翻译项,英文的依然是英文。Magento是用helper类的魔术方法来做多语言的处理,比如
而无法翻译的地方大多数就是因为需要翻得词没有用Mage::helper('XXX')->__()来做处理,或者说Magento官方遗漏了。对于非英语国家来说,想要完整的翻译完Magento就得把这些地方都给找出来,一个个处理掉。
今天处理掉的一个地方是后台产品页的自定义选项,给产品添加自定义选项需要先选择输入类型,如文本框或下拉框,而可选择的类型都是英文显示,这些词在Adminhtml.csv中都有翻译项,不过明显不起作用。
同样的原因,这里也是因为官方遗漏了这些词的处理,打开\app\code\core\Mage\Adminhtml\Model\System\Config\Source\Product\Options\Type.php,找到如下代码
这里的两个'label'就是可选输入类型的标签,可以看到赋值的时候并没有使用Mage::helper('XXX')->__(),加上处理的代码,修改后的如下
这样这里就会去读取csv文件里的翻译项来做翻译了,效果如下
今天处理这个bug的时候还有意外收获,之前一直没注意过Magento是怎么在处理解析xml文件的,因为上面的各种类型是从config.xml里读取的,所以看到了Magento解析xml的过程。
Mage::getConfig()->getNode()这个函数可以根据节点来获得节点下的内容,参数就是你要解析的节点,如'global/catalog/product/options/custom/groups',根据这个参数,Magento就能准确的找到xml文件里你要的内容,比如'global/catalog/product/options/custom/groups'这个对应的就是\app\code\core\Mage\Catalog\etc\config.xml里的代码
分享到:
相关推荐
深入理解Magento-第一章 – Magento强大的配置系统 深入理解Magento-第二章 – Magento请求分发与控制器 深入理解Magento-第三章 – 布局,块和模板 深入理解Magento-第四章 – 模型和ORM基础 深入理解...
magento-ce-2.4.0_sample_data-2020-07-26-02-51-57.tar.gz Include sample data
magento-1.8.0.0.tar.gz
magento-ce-2.4.0-2020-07-24-11-15-38.tar.gz 不带sample data
Magento-Redismanager, 在 Magento,用于Redis的超级用户控制 Redis 管理Redis服务的实用程序特性系统> 配置>的自动或者手动配置高级> Redis管理在负载均衡环境中缓存服务不同的理想情况直接从magento面板管理员管理...
magento -redis 安装包
因为国外网速太慢了,所以下载后分享给需要的人。magento-ce-2.4.2-p1-2021-04-22-10-49-09
magento-1.6.2.0 magento-1.6.2.0 magento-1.6.2.0
1.订单管理-----------------------------------------------------Magento-2.1订单管理 2.发票---------------------------------------------------------- Magento-2.2订单管理 3.配送--------------------------...
magento-1.9.1.1-2015-04-30-12-49-08 源代码包
magento的SMTP插件magento的SMTP插件magento的SMTP插件
Magento-PSR-0-Autoloader, 这个扩展增加一个 PSR 0自动装弹机在Magento自动装弹机前 Magento-PSR-0-Autoloader这个扩展在Magento自动装弹机前添加一个 PSR-0 自动装弹机要初始化新的命名空间,请在 local.xml的...
magento-演示数据1.6.1.0
以详细的操作实例说明了magento的使用、配置、开发相关的实际应用。
Ajax-magento2-catalog-infinite-scroll.zip,免费的Magento 2扩展,为目录添加无限滚动功能(通过AJAX实现)编码教程,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。...
Ajax-Magento-ajax-add-to-cart.zip,[模块magento 1]magento ajax添加到购物车-ajoter vos produits au panier en ajax/感谢ajax将您的产品添加到购物车,ajax代表异步javascript和xml。它是多种web技术的集合,包括...
magento-1.6.1.0最新英文版
magento-1.7.0.7z,安装包
如何给产品描述里的关键字...可是由于需要,不得不自己开发一个这样的插件。并支持到Magento1.6.2 说明请查看:http://www.hicoogle.com/magento-gei-chan-pin-miao-shu-guan-jian-zi-pi-liang-lian-jie-cha-jian.html
Magento-CE-2.3.4_sample_data-2020-01-22-11-11-58.tar.gz源自官网