Magento 2安装语言包(nl_NL翻译)
我目前有一个新鲜的Magento 2安装。基本上有一个配置为荷兰市场的商店设置。Magento 2安装语言包(nl_NL翻译)
我读过关于安装语言包(http://devdocs.magento.com/guides/v2.0/frontend-dev-guide/translations/xlate.html)的Magento 2 devdocs,虽然文档看起来很清晰,但我仍然有一些问题。
Magento 2附带预装的荷兰语语言包,位于vendor/magento/language-nl_nl。但该语言包不包含任何翻译的短语。
我用Magento控制台创建了一个* .csv文件,收集了厂商/ magento目录文件中的所有短语。我想这个文件是用来分发给翻译者的。
经过一次完整的翻译后,有几种选择,我怀疑在我的情况下最好的一个最适合;
- 创建主题和存储nl_NL.csv文件insise的theme`s国际化 DIR
- 使用Magento的命令行工具来收拾我的翻译 短语在Magento的目录
选项1似乎有一个缺点,因为我的荷兰语翻译与当前主题不直接相关,但对于配置了nl_NL语言环境的商店。
选项2对我不清楚。 Magento命令i18n:pack命令将我的nl_NL.csv源文件完美地分解为vendor/module/i18n/nl_NL.csv文件。但是,由于模块化问题,将其打包到供应商/ magento/dir似乎不是一种选择。
我需要采取哪些步骤才能创建与展示主题无关的全球荷兰语翻译,是模块化的,并且可以在所有Magento 2项目中轻松分发?
完成翻译后,您可以在app/i18n
下创建一个“语言包”。文件夹命名约定是<vendorname>/<language_code>
。它应包含以下文件 - composer.json - language.xml - 注册。PHP
对于i18n
你可以把它像app
文件夹
i18n
命名为国际化文件夹中的主题此
- 新建文件夹
-
示例
app/design/theme/custom
从这个custom
这是你的主题名称
-
示例
- make语言包
folder(s)
像en_us
或en_gb
或nl_nl
-
i18n -> custom
文件夹现在你的文件夹结构会喜欢这个app/i18n/custom/nl_nl/
现在,在这个您的语言包文件夹使下面的文件,所有文件将在此文件夹结构app/i18n/custom/en_us/
应用程序/ I18N /定制/ nl_nl/composer.json
{
"name": "custom/nl_nl",
"description": "English (US) language",
"version": "100.0.1",
"license": [
"OSL-3.0",
"AFL-3.0"
],
"require": {
"magento/framework": "100.0.*"
},
"type": "magento2-language",
"autoload": {
"files": [
"registration.php"
]
}
}
应用程序/ I18N /定制/ nl_nl/language.xml
<?xml version="1.0"?>
<language xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/Language/package.xsd">
<code>nl_NL</code>
<vendor>custom</vendor>
<package>nl_nl</package>
</language>
应用程序/ I18N /定制/ nl_nl /registration.php
<?php
/**
* Copyright © 2016 Magento. All rights reserved.
* See COPYING.txt for license details.
*/
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::LANGUAGE,
'custom_nl_nl',
__DIR__
);
在此之后把你nl_NL.csv在你的语言包文件夹
app/i18n/custom/nl_nl/nl_NL.csv
比后运行此以下命令
php bin/magento setup:upgrade
php bin/magento setup:static-content:deploy
php bin/magento cache:clean
希望这将有助于你
总结一下:对于供应商/ Magento的文件夹中预先安装语言包,包括一个composer.json和language.xml文件,我还是要加总包(language.xml ans composer.json文件)到app/i18n文件夹? –
我们建议您创建您自己的语言包。我们不建议修改供应商中的预装语言包。 – Maddy
谢谢Maddy。这使事情变得清晰。现在就开始翻译吧! ;) –