如何在 Magento 2 中安装语言包?
How to install a language pack in Magento 2?
我尝试按照 https://mage2.pro/t/topic/270 and http://devdocs.magento.com/guides/v2.0/config-guide/cli/config-cli-subcommands-i18n.html#config-cli-subcommands-xlate-example2 的说明进行操作
但我还是失败了。
我正在尝试将 header 中搜索框的文本从 'Search entire store here...' 更改为 'Suche...'
现在,我在 app/i18n/Test/de_ch
中有以下文件
- composer.json
- de_ch.csv
- language.xml
- registration.php
此内容在composer.json
{
"name": "test/de_ch",
"description": "German (Switzerland) language",
"version": "100.0.1",
"license": [
"OSL-3.0",
"AFL-3.0"
],
"require": {
"magento/framework": "100.0.*"
},
"type": "magento2-language",
"autoload": {
"files": [
"registration.php"
]
}
}
de_ch.csv
"Search entire store here...","Suche..."
language.xml
<language xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/Language/package.xsd">
<code>de_CH</code>
<vendor>Test</vendor>
<package>de_ch</package>
</language>
registration.php
<?php \Magento\Framework\Component\ComponentRegistrar::register(\Magento\Framework\Component\ComponentRegistrar::LANGUAGE,'Test_de_ch',__DIR__);
在管理员中,我使用 Deutsch (Schweiz) 配置商店(商店 > 配置 > 常规 > 常规 > 语言环境选项 > 语言环境)。
然后,尝试phpbin/magentosetup:upgrade和phpbin/magentocache:clean
但是没有,搜索表单中的文本仍然是 'Search entire store here...'
请试试这个命令:
php bin/magento setup:static-content:deploy
我刚刚试了一下,它开始工作了。您需要将一些小写更改为小写,反之亦然。
- 将文件夹
app/i18n/Test/de_ch
重命名为 app/i18n/test/de_ch
(小写 t)
- 将文件
de_ch.csv
重命名为 de_CH.csv
(大写 CH,这需要与 language.xml
中的 <code></code>
相同)
- 在
language.xml
中,将Test
改为test
(当然也要在文件开头加上<?xml version="1.0"?>
)。这是在 App/Language/package.xsd 中定义的
- 也在
registration.php
中,将其更改为test_de_ch
----编辑添加完整代码---
在/app/i18n/test/de_ch
创建以下文件:
composer.json
{
"name": "test/de_ch",
"description": "German (Switzerland) language",
"version": "100.0.1",
"license": [
"OSL-3.0",
"AFL-3.0"
],
"require": {
"magento/framework": "100.0.*"
},
"type": "magento2-language",
"autoload": {
"files": [
"registration.php"
]
}
}
de_CH.csv
"Search entire store here...","Suche TESTING..."
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>de_CH</code>
<vendor>test</vendor>
<package>de_ch</package>
</language>
registration.php
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::LANGUAGE,
'test_de_ch',
__DIR__
);
你可以buy it and install it :)
composer config repositories.atconnect composer https://connect20.aveo-trade.cz
composer require atconnect/magento-two-language-de-de
我们使用这个作曲家包结构:
magento-two-language-de-de/composer.json
{
"name": "atconnect/magento-two-language-de-de",
"description": "Magento 2.0.0: de_DE",
"version": "2.0.0.2-stable",
"license": [
"proprietary"
],
"type": "magento2-language",
"autoload": {
"files": [
"registration.php"
]
}
}
magento-two-language-de-de/language.xml
<?xml version="1.0"?>
<!--
/**
* @copyright Copyright (c) AveoTrade
Licence: https://connect20.aveo-trade.cz/cat:Agreement
*/
-->
<language xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/Language/package.xsd">
<code>de_DE</code>
<vendor>atconnect</vendor>
<package>magento-two-language-de-de</package>
</language>
magento-two-language-de-de/registration.php
<?php
/**
* Copyright © 2015 AveoTrade
*/
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::LANGUAGE,
'atconnect_magento-two-language-de-de',
__DIR__
);
magento-two-language-de-de/de_DE.csv
"1 Hour","1 Stunde",module,Magento_AdminNotification
"12 Hours","12 Stunden",module,Magento_AdminNotification
"2 Hours","2 Stunden",module,Magento_AdminNotification
"24 Hours","24 Stunden",module,Magento_AdminNotification
"6 Hours","6 Stunden",module,Magento_AdminNotification
我尝试按照 https://mage2.pro/t/topic/270 and http://devdocs.magento.com/guides/v2.0/config-guide/cli/config-cli-subcommands-i18n.html#config-cli-subcommands-xlate-example2 的说明进行操作 但我还是失败了。
我正在尝试将 header 中搜索框的文本从 'Search entire store here...' 更改为 'Suche...'
现在,我在 app/i18n/Test/de_ch
中有以下文件- composer.json
- de_ch.csv
- language.xml
- registration.php
此内容在composer.json
{
"name": "test/de_ch",
"description": "German (Switzerland) language",
"version": "100.0.1",
"license": [
"OSL-3.0",
"AFL-3.0"
],
"require": {
"magento/framework": "100.0.*"
},
"type": "magento2-language",
"autoload": {
"files": [
"registration.php"
]
}
}
de_ch.csv
"Search entire store here...","Suche..."
language.xml
<language xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/Language/package.xsd">
<code>de_CH</code>
<vendor>Test</vendor>
<package>de_ch</package>
</language>
registration.php
<?php \Magento\Framework\Component\ComponentRegistrar::register(\Magento\Framework\Component\ComponentRegistrar::LANGUAGE,'Test_de_ch',__DIR__);
在管理员中,我使用 Deutsch (Schweiz) 配置商店(商店 > 配置 > 常规 > 常规 > 语言环境选项 > 语言环境)。
然后,尝试phpbin/magentosetup:upgrade和phpbin/magentocache:clean
但是没有,搜索表单中的文本仍然是 'Search entire store here...'
请试试这个命令:
php bin/magento setup:static-content:deploy
我刚刚试了一下,它开始工作了。您需要将一些小写更改为小写,反之亦然。
- 将文件夹
app/i18n/Test/de_ch
重命名为app/i18n/test/de_ch
(小写 t) - 将文件
de_ch.csv
重命名为de_CH.csv
(大写 CH,这需要与language.xml
中的<code></code>
相同) - 在
language.xml
中,将Test
改为test
(当然也要在文件开头加上<?xml version="1.0"?>
)。这是在 App/Language/package.xsd 中定义的
- 也在
registration.php
中,将其更改为test_de_ch
----编辑添加完整代码---
在/app/i18n/test/de_ch
创建以下文件:
composer.json
{
"name": "test/de_ch",
"description": "German (Switzerland) language",
"version": "100.0.1",
"license": [
"OSL-3.0",
"AFL-3.0"
],
"require": {
"magento/framework": "100.0.*"
},
"type": "magento2-language",
"autoload": {
"files": [
"registration.php"
]
}
}
de_CH.csv
"Search entire store here...","Suche TESTING..."
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>de_CH</code>
<vendor>test</vendor>
<package>de_ch</package>
</language>
registration.php
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::LANGUAGE,
'test_de_ch',
__DIR__
);
你可以buy it and install it :)
composer config repositories.atconnect composer https://connect20.aveo-trade.cz
composer require atconnect/magento-two-language-de-de
我们使用这个作曲家包结构: magento-two-language-de-de/composer.json
{
"name": "atconnect/magento-two-language-de-de",
"description": "Magento 2.0.0: de_DE",
"version": "2.0.0.2-stable",
"license": [
"proprietary"
],
"type": "magento2-language",
"autoload": {
"files": [
"registration.php"
]
}
}
magento-two-language-de-de/language.xml
<?xml version="1.0"?>
<!--
/**
* @copyright Copyright (c) AveoTrade
Licence: https://connect20.aveo-trade.cz/cat:Agreement
*/
-->
<language xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/Language/package.xsd">
<code>de_DE</code>
<vendor>atconnect</vendor>
<package>magento-two-language-de-de</package>
</language>
magento-two-language-de-de/registration.php
<?php
/**
* Copyright © 2015 AveoTrade
*/
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::LANGUAGE,
'atconnect_magento-two-language-de-de',
__DIR__
);
magento-two-language-de-de/de_DE.csv
"1 Hour","1 Stunde",module,Magento_AdminNotification
"12 Hours","12 Stunden",module,Magento_AdminNotification
"2 Hours","2 Stunden",module,Magento_AdminNotification
"24 Hours","24 Stunden",module,Magento_AdminNotification
"6 Hours","6 Stunden",module,Magento_AdminNotification