wdmg/yii2-translations

翻译管理器

安装次数: 485

依赖者: 1

建议者: 0

安全: 0

星标: 1

关注者: 3

分支: 1

开放问题: 0

类型:yii2-extension

1.3.1 2023-06-25 06:09 UTC

This package is auto-updated.

Last update: 2024-09-25 09:02:25 UTC


README

Yii2 Downloads Packagist Version Progress GitHub license

Yii2 Translations manager

Yii2 Translations

Yii2 的翻译管理器。该模块管理系统的翻译和语言。通过其自身组件将语言版本输出到网站的客户端。该模块的功能与其它模块交互,提供多语言内容。

此模块是 Butterfly.CMS 内容管理系统的组成部分,但也可以作为一个独立扩展使用。

版权所有 (c) 2019-2023 W.D.M.Group, Ukraine

需求

  • PHP 5.6 或更高版本
  • Yii2 v.2.0.40 及更高版本
  • Yii2 Base 模块(必需)

安装

要安装模块,请在控制台运行以下命令

$ composer require "wdmg/yii2-translations"

配置数据库连接后,在控制台运行以下命令

$ php yii translations/init

然后选择您想要执行的操作

  1. 应用所有模块迁移
  2. 回滚所有模块迁移
  3. 扫描并添加翻译

迁移

无论如何,您都可以执行迁移并创建初始数据,请在控制台运行以下命令

$ php yii migrate --migrationPath=@vendor/wdmg/yii2-translations/migrations

配置

要将模块添加到项目中,请在配置文件中添加以下数据

'modules' => [
    'translations' => [
        'class' => 'wdmg\translations\Module',
        'routePrefix' => 'admin',
        'supportLocales' => ["en", "en-US", "uk", "uk-UA", "ru", "ru-RU", "de", "de-DE", "fr", "fr-FR", "hi", "hi-IN"], // support languages (locales)
        'forceTranslation' => false, // force message translation when the source and target languages are the same
        'sourceLanguage' => 'en-US', // the language of the original messages
        'enableCaching' => false, // enable caching translated messages
        'cachingDuration' => 3600 // time in seconds that the messages can be cached
        'languageScheme' => 'before', // language Scheme (position in URL): before (by default), after, query, subdomain
        'urlManagerConfig' => [], // UrlManager configuration
        'languageOpenGraph' => true, // add OpenGraph markup
        'languageHrefLang' => true, // add HrefLang attribute
        'useExtendedPatterns' => false, // extend search by full code of locale
        'hideDefaultLang' => true, // hide default language locale in URL`s
        ...
    ],
    ...
],

路由

使用模块的 Module::dashboardNavItems() 方法生成导航项目列表,如下所示

<?php
    echo Nav::widget([
    'options' => ['class' => 'navbar-nav navbar-right'],
        'label' => 'Modules',
        'items' => [
            Yii::$app->getModule('translations')->dashboardNavItems(),
            ...
        ]
    ]);
?>

状态和版本 [已准备使用]

  • v.1.3.1 - 修复设置语言时的url管理器
  • v.1.3.0 - 修复,更新依赖项和版权
  • v.1.2.3 - 更新 README.md 和添加/更新语言