Skip to content

Latest commit

 

History

History
68 lines (48 loc) · 3.23 KB

README.ru.md

File metadata and controls

68 lines (48 loc) · 3.23 KB

Yii2 Multi Language extension

Это расширение позволяет делать многоязычные сайты на yii2. Вместо неформальной спецификации используется статья google "Мультирегиональные и многоязычные сайты".

Примечание: расширение находится в стадии разработки.

This instruction is available in English.

Особенности расширения

  • Поддержка неограниченного количества языков.
  • Язык страницы вставляется в ссылку как директория.
  • Корректная работа с настройками yii\web\UrlManager: enablePrettyUrl и showScriptName.
  • Корректная работа сайта в подкаталогах (например, http://example.com/sub/directory/frontend/web/ru/site/login).
  • Возможность указать язык принудительно с помощью cookies. В этом случае скрипт будет делать редирект, если пользователь открыл страницу с другим языком.
  • Редиректы только для GET-запросов. POST, Ajax XHR будут корректно работать.
  • Есть хелпер для переключения языка (легко использовать ссылки или bootstrap dropdown).
  • CRUD-actions для быстрой разработки модулей админки.
  • Поддержка <link rel="alternate" ... (TODO: сделать справку).

Примеры ссылок

Так будут выглядеть ссылки из настройками enablePrettyUrl=true; showScriptName=false. Примеры для других настроек yii\web\UrlManager можно посмотреть тут (TODO: сделать справку).

Установка и настройка расширения

Запуск тестов

php -S localhost:8090 -t advanced
composer run-script test

Перед запуском тестов у вас должен быть установлен codeception.

Task list

  • Rewrite Controller->findModel(...)
  • Make a working example of the module "page"
  • Cover the test more code
  • Problem with text site/error. Session Flash Data (?)
  • Detect language by IP (country) (?)