kunstmaan/languagechooser-bundle

Kunstmaan 语言选择器包为您的项目提供基本且可扩展的语言选择功能

4.0.0-RC1 2016-02-15 12:16 UTC

README

Build Status Total Downloads Latest Stable Version Analytics

处理最终用户的语言自动检测或显示带有语言选择的启动页面。

安装说明

假设您已安装 composer.phar 或 composer 二进制文件

$ composer require kunstmaan/languagechooser-bundle dev-master

将 KunstmaanLanguageChooserBundle 和 LuneticsLocaleBundle 添加到您的 AppKernel.php 文件中

new Kunstmaan\LanguageChooserBundle\KunstmaanLanguageChooserBundle(),
new Lunetics\LocaleBundle\LuneticsLocaleBundle(),

注意:KunstmaanLanguageChooserBundle 应该在 LuneticsLocaleBundle 之前加载

将 KunstmaanLanguageChooserBundle 添加到您的 routing.yml 中

# KunstmaanLanguageChooserBundle
_languagechooser:
    resource: .

将 KunstmaanLanguageChooserBundle 的配置覆盖到 config.yml 中以适应您的需求

kunstmaan_language_chooser:
    autodetectlanguage: false
    showlanguagechooser: true
    languagechoosertemplate: CompanyYourBundle:Default:language-chooser.html.twig
    languagechooserlocales: [en, nl, fr]

使用方法

当用户访问您的网站根页面(例如 http://domain.com/)时,

  • 如果将 autodetectlanguage 设置为 true,则会自动重定向到用户选择的语言(例如 http://domain.com/en
  • 如果将 showlanguagechooser 设置为 true,则会在启动页面看到可以选择语言的手动选项

可以通过 languagechoosertemplate 配置参数设置启动页面的模板路径。

在所有 Twig 模板中,都有一个包含可用语言的数组的全局变量 languagechooser_languages。这在您自定义启动页面或希望在其他页面显示语言选择时非常有用。

<ul>
    {% for lang in languagechooser_languages %}
        <li>{{ lang }}</li>
    {% endfor %}
</ul>