Оглавление
Технические требования
Чтобы запустить скрипт перевода Linguise, вам понадобится следующее:
- Запустите PHP 7+ и Laravel
- Серверы Apache, LiteSpeed, NGINX, IIS
- Активируйте переписывание URL в конфигурации вашего сервера
- Корневая папка Laravel обычно находится в “public” папке, убедитесь, что Linguise установлен в этой папке
1. Сгенерируйте ключ API
После вашего подключения к вашему Linguise dashboard вам потребуется сначала настроить новый домен и сохранить его настройки, чтобы получить API-ключ.
API‑ключ — это то, что требуется для активации перевода на вашем сайте. По сути, API‑ключ проверит, какой язык активирован на каком домене, и позволит генерировать страницы нейронного перевода.
Скопируйте ключ API и сохраните его в буфере обмена.
Затем, щёлкнув по вкладке “Script PHP”, вы’ получите инструкции по установке, которые мы’ подробно рассмотрим здесь.
2. Загрузите и подключите скрипт перевода Linguise
Скрипт перевода Linguise необходимо загрузить на ваш сервер, в папку, где установлен Laravel, его можно скачать здесь:
После загрузки скрипта распакуйте его и загрузите в корневую папку, где установлен Laravel.
- Убедитесь, что это находится на корневом уровне вашей установки Laravel (обычно Laravel устанавливает корень в “public” папке, вы можете установить Linguise там)
- Убедитесь, что папка называется “linguise” (имя по умолчанию при распаковке папки)
Как получить доступ к интерфейсу Linguise Script?
После завершения установки Linguise вы можете получить доступ к панели управления, посетив свой веб-сайт по следующему URL-адресу:
https://www.domain.com/linguise
Измените доменное имя в соответствии с адресом вашего веб-сайта*.
Убедитесь, что у Linguise есть соответствующие права на чтение и запись*.
Настройка пароля и подключения к базе данных
После доступа к интерфейсу скрипта вам будет показан экран настройки, где вы сможете создать пароль и подключиться к выбранной вами базе данных.
Ты можешь:
- Установите пароль, который потребуется для дальнейшего доступа к этому интерфейсу.
- Выберите тип базы данных — MySQL или SQLite, в зависимости от ваших настроек и предпочтений.
Эта первоначальная настройка обеспечивает безопасный доступ и позволяет сконфигурировать скрипт в соответствии с вашей средой.
подключение к базе данных MySQL
Если вы выберете MySQL, появится другой интерфейс, запрашивающий следующие данные для подключения к полям конфигурации MySQL:
Убедитесь, что предоставленная информация верна, чтобы установить успешное соединение с вашей базой данных MySQL.
MySQL vs SQLite – В чём разница?
MySQL и SQLite — популярные системы баз данных, используемые для хранения и управления данными веб‑сайтов и приложений. Однако они предназначены для разных сценариев использования и имеют некоторые ключевые различия:
| Особенность | SQLite | MySQL |
|---|---|---|
| Настраивать | Очень просто (требуется установка SQLite) | Требуется настройка сервера |
| Хранилище | Один файл | Управление осуществляется сервером MySQL |
| Производительность | Отлично подходит для небольших приложений | Лучше подходит для крупных систем с высокой интенсивностью трафика |
| Вариант использования | Локальные приложения, тестирование, небольшие сайты | Веб-приложения, электронная коммерция, корпоративные системы |
Интерфейс Linguise Script: настройка для платформы PHP
Панель управления переводом Linguise, ранее доступная только для Joomla и WordPress, теперь поддерживает PHP и другие платформы. Это обновление позволяет пользователям легко настраивать языковые параметры — такие как параметры отображения, стили флагов и внешний вид — непосредственно из единого интерфейса, независимо от используемой CMS или фреймворка.
Администраторы могут более эффективно управлять настройками языка благодаря таким единообразным функциям, как всплывающие окна выбора языка, эффекты теней и варианты выбора флагов для конкретных регионов. Панель управления сохраняет свой удобный дизайн, предлагая при этом более широкую совместимость с различными веб-средами.
3. Настройте URL‑адреса языков
URL по языкам необходимо настроить в файле .htaccess, если у вас есть “RewriteBase /” в файле, просто скопируйте после этого весь следующий код:
RewriteEngine On RewriteRule ^linguise/linguise.php$ - [L] RewriteRule ^(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$ linguise/linguise.php?linguise_language=$1&original_url=$2 [L,QSA]
4. Активировать переключатель языка в Laravel
Переключатель языка — это всплывающее окно с флагом для выбора нужного языка. Чтобы загрузить его, вам понадобится скопировать код, указанный в конце конфигурации сайта (Linguise dashboard).
Скрипт должен быть загружен в head ваших HTML-страниц, обрабатываемых Laravel. Затем переключатель языка с флагом будет загружен автоматически.
Переключатель языков будет отображаться по умолчанию в плавающем положении в правом верхнем углу вашего сайта. Вы можете настроить его по своему желанию с помощью CSS.
Важное примечание SEO: Количество языков, которые вы настраиваете, сильно влияет на SEO. Когда вы настраиваете языки перевода, если у вас большое количество проиндексированных страниц (>500), поисковый движок может потребовать много времени для их обработки. Это может повлиять на ваш SEO в исходном языке. Поэтому мы рекомендуем сначала добавить максимум 5 языков, а затем, когда они будут проиндексированы, добавлять языки партиями по 3 в месяц.
Настройте переключатель языка
Переключатель языка можно настроить в панели управления Linguise > Настройки > Отображение языковых флагов. Все изменения, внесенные здесь, будут отражены на веб-сайте.
В правой части экрана отображается предварительный просмотр переключателя языка. Вот элементы, которые вы можете настроить:
- 3 варианта расположения элементов: рядом, выпадающее меню или всплывающее окно
- Позиция переключателя языка
- Содержимое переключателя языка
- Названия языков на английском или родном языке
- Формы и размеры флагов
- Цвета и тень от коробки
Загрузите переключатель языка в контент Laravel
Чтобы отобразить переключатель языка в определённом месте в содержимом Laravel, вы должны установить позицию как “In place”.
После того как вы установите позицию в панели управления Linguise, вы можете добавить приведённый ниже шорткод, чтобы включить его. Нажмите на код ниже, чтобы скопировать его в буфер обмена.
[лингвизе]
После добавления на фронтенде названия флага и языка будут отображаться в HTML-области, куда вы добавили код.
Система локального кэша для страниц Laravel
В качестве опции вы можете активировать локальную систему кэширования, которая хранит URL-адреса и связанный с ними многоязычный контент для более быстрой загрузки страниц. Локальный кэш позволит сэкономить данные, передаваемые между сервером Linguise и сервером вашего веб-сайта. Кэш используется только тогда, когда страница уже переведена и не обновлялась. Приоритет будет отдаваться кэшу наиболее просматриваемых многоязычных страниц.
В качестве опции вы можете задать объём кэша в мегабайтах. В следующем примере кэш активирован, и объём кэша, который следует сохранять, составляет 500 МБ:
/** Базовая конфигурация **/ public $cache_enabled = true; public $cache_max_size = 500; // В мегабайтах
Специфические настройки для платформы Laravel
В файле Configuration.php у нас также есть настройка, позволяющая передать некоторую специфическую конфигурацию для CMS или не CMS. По умолчанию это автоматическое, но команда поддержки может попросить вас персонализировать его для использования некоторых специальных настроек.
Вот код, который нужно добавить для Laravel, это имя CMS в нижнем регистре:
/** Базовая конфигурация **/ /* * Обновите значение CMS в соответствии с вашей CMS * Доступные CMS: laravel, prestashop */ public static $cms = 'laravel';
От SQLite к MySQL
По‑прежнему в файле Configuration.php есть настройка, принуждающая использовать MySQL вместо SQLite, если SQLite не установлен на сервере.
В этом случае вам понадобится заполнить информацию MySQL в этой части файла Configuration.php:
/** Продвинутая конфигурация базы данных **/ /* * Если вы не хотите использовать Sqlite, вы можете использовать MySQL * Для этого вам нужно заполнить следующие переменные * Linguise создаст таблицы для вас */ public static $db_host = ''; public static $db_user = ''; public static $db_password = ''; public static $db_name = ''; public static $db_prefix = '';
Автоматический перевод на Laravel + Windows IIS серверах
Добавьте строку, соответствующую вашему конструктору сайтов, в файл Web.config.
Она должна быть установлена до любого другого перенаправления, особенно перенаправления к вашему основному PHP‑файлу:
Автоматический перевод на Laravel + NGINX серверах
переписать ^/(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl| fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky| lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$ /linguise/linguise.php?linguise_language=$1&original_url=$2 last;