Содержание
Технические требования Concrete CMS
Для работы нейронного автоматического перевода в Concrete CMS потребуется PHP-скрипт (его можно скачать ниже). Для установки скрипта Linguise вам понадобятся следующие компоненты:
- Запускайте PHP 7.3+
- Apache, сервер IIS, NGINX
- Убедитесь, что на вашем сервере включена функция перезаписи URL-адресов
- Concrete CMS 9 и выше
1. Сгенерируйте ключ API
После подключения или регистрации в панели управления Linguise вам сначала потребуется настроить новый домен и сохранить его параметры, чтобы получить ключ API.
Для продолжения регистрации домена Linguise , как указано в этой документации, а также для выбора исходного и целевого языков, вы можете выбрать платформу «Другая PHP».

После этого вы получите:
- API-ключ, подтверждающий ваше членство
- Ссылка на скрипт Linguise для переключения языка

Ключ API необходим для активации перевода на вашем сайте Concrete CMS . По сути, ключ API проверяет, какой язык активирован на вашем домене, и позволяет автоматически переводить контент.
На данный момент вы можете скопировать ключ API и сохранить его в буфере обмена.
2. Загрузите и подключите скрипт перевода Linguise
Скрипт перевода Linguise необходимо загрузить на ваш сервер, где установлена Concrete CMS . Скачать его можно здесь.
После загрузки скрипта распакуйте его и загрузите в корневую папку, где установлена система управления Concrete CMS .
- Убедитесь, что он расположен в корневой директории вашего сайта (там, где находятся файлы Concrete CMS
- Убедитесь, что папка сохраняет свое имя по умолчанию « linguise ».

Как получить доступ к интерфейсу сценария Linguise ?
После завершения Linguise установки вы можете получить доступ к панели панели, посетив ваш сайт со следующим форматом URL:
https://www.domain.com/ linguise
Измените адрес домена в соответствии с адресом вашего веб -сайта*
Убедитесь, что Linguise
Настройка пароля и подключения к базе данных
Как только вы получите доступ к интерфейсу скрипта, вам будет представлен экран настройки, где вы можете создать пароль и подключиться к предпочтительной базе данных.
Ты можешь:
- Установите пароль, который потребуется для будущего доступа к этому интерфейсу.
- Выберите тип базы данных - MySQL или SQLite, в зависимости от вашей настройки и предпочтений.
Эта первоначальная настройка обеспечивает безопасный доступ и позволяет настроить сценарий в соответствии с вашей средой.

MySQL Batabase Connection
Если вы выберете MySQL, появится другой интерфейс с просьбой о следующих сведениях подключения поля конфигурации MySQL ниже:

Убедитесь, что информация верна, чтобы установить успешное соединение с вашей базой данных MySQL.
MySQL против SQLite - в чем разница?
Как MySQL, так и SQLite являются популярными системами баз данных, используемых для хранения и управления данными для веб -сайтов и приложений. Тем не менее, они предназначены для различных вариантов использования и имеют некоторые ключевые различия:
| Функция | SQLite | Mysql |
|---|---|---|
| Настраивать | Очень просто (требуется установка SQLite) | Требуется настройка сервера |
| Хранилище | Один файл | Управляется MySQL Server |
| Производительность | Отлично подходит для мелких приложений | Лучше для крупных систем с высоким трафиком |
| Сценарий использования | Местные приложения, тестирование, небольшие сайты | Веб -приложения, электронная коммерция, корпоративные системы |
Интерфейс сценария Linguise : настройка для платформы PHP
Дополнительная панель Linguise перевода, ранее доступная только для Joomla и WordPress, теперь расширяет поддержку PHP и дополнительные платформы. Это обновление позволяет пользователям плавно настраивать настройки языка - например, параметры отображения, стили флагов и настройка внешнего вида - прямо из унифицированного интерфейса, независимо от их CMS или Framework.

Администраторы могут более эффективно управлять Linguise настройками, с такими последовательными функциями, как всплывающие окна выбора языка, теневые эффекты и варианты выбора флагов, специфичные для региона. Панель инструментов сохраняет свой удобный дизайн, предлагая более широкую совместимость для различных веб-сред.


3. Настройте переадресацию URL-адресов в Concrete CMS
По умолчанию в Concrete CMSвключена функция переадресации URL-адресов. Если это не так, вы можете активировать её у своего хостинг-провайдера.
Языковые настройки URL-адресов необходимо внести в файл .htaccess. Просто скопируйте приведенный ниже код после кода « RewriteEngine on » , доступного в стандартной Concrete CMS .htaccess.
RewriteEngine On
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]
В итоге , ваш Concrete CMS должен выглядеть примерно так:
RewriteEngine On
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)(?:$|/)(.*)$ /concretee/linguise/linguise.php?linguise_language=$1&original_url=$2 [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}/index.html !-f
RewriteCond %{REQUEST_FILENAME}/index.php !-f
RewriteRule . /concretee/index.php [L]
Теперь вы можете загружать все переведенные страницы, используя URL-адрес, например: www.concretewebsite.com/fr/
Теперь давайте загрузим переключатель языка.
4. Активируйте переключатель языка
4.1 Загрузка скрипта Linguise JS
Для отображения переключателя языков с флагами и альтернативными URL-адресами в заголовках HTML (в целях SEO) необходимо загрузить ссылку на скрипт Linguise JS на всех страницах вашей Concrete CMS .
Чтобы скопировать ссылку на скрипт, перейдите в настройки домена на панели управления Linguise и скопируйте ссылку на скрипт.

Самый простой способ загрузить этот код в Concrete CMS — добавить его в файл header.php . код.
Настроить это можно, выполнив следующие шаги: Войдите в панель администратора , затем в правой части экрана перейдите в раздел «Система и настройки» > «SEO и статистика» > «Коды отслеживания» . По умолчанию можно использовать этот метод.
Однако, если вы используете другую тему, отличную от темы по умолчанию, вам потребуется вставить этот код в файл header.php , который находится в папке темы .
Отредактируйте файл скрипта, добавив ссылку на скрипт в раздел заголовка, как показано ниже.

По умолчанию переключатель языка будет отображаться в плавающем верхнем правом углу вашего веб-сайта. Вы можете настроить его по своему усмотрению, как описано в следующей главе.

Важное замечание по SEO: количество настроенных языков оказывает большое влияние на SEO. При настройке языков перевода, если у вас большое количество проиндексированных страниц (>500), поисковая система может потратить много времени на их обработку. Это может негативно сказаться на SEO вашего сайта на исходном языке. Поэтому мы рекомендуем сначала добавить максимум 5 языков, а после индексации — добавлять по 3 языка в месяц.
Настройка переключателя языка
Переключатель языка можно настроить в панели управления Linguise > Настройки > Отображение языковых флагов. Все изменения, внесенные здесь, будут отражены на веб-сайте.

В правой части экрана отображается предварительный просмотр переключателя языка. Вот элементы, которые вы можете настроить:
- 3 макета: бок о бок, выпадающий или всплывающий
- Позиция переключателя языка
- Содержимое переключателя языка
- Названия языков на английском или родном языке
- Формы и размер флагов
- Цвета и тень от коробки
Загрузите переключатель языка в контент Concrete CMS

Чтобы отобразить переключатель языков в нужном месте в Concrete CMS , необходимо установить позицию «На месте».
После установки позиции в Linguise можно добавить приведенный ниже шорткод. Щелкните по коду ниже, чтобы вставить его в буфер обмена.
[linguise]
После добавления на фронтенде названия флага и языка будут отображаться в HTML-области, куда вы добавили код.
Активируйте опцию локального кэширования
В качестве опции вы можете активировать локальную систему кэширования, которая хранит URL-адреса и связанный с ними многоязычный контент для более быстрой загрузки страниц. Локальный кэш позволит сэкономить данные, передаваемые между сервером Linguise и сервером вашего веб-сайта. Кэш используется только тогда, когда страница уже переведена и не обновлялась. Приоритет будет отдаваться кэшу наиболее просматриваемых многоязычных страниц.
В дополнение к этому, вы можете задать объем кэша, хранящегося в МБ. В следующем примере кэш активирован, и объем кэша для хранения составляет 500 МБ.

/** Basic configuration **/
public $cache_enabled = true;
public $cache_max_size = 500; // In megabyte
Автоматический перевод на серверах NGINX
rewrite ^/(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;
Автоматический перевод на серверах Windows IIS
Добавьте в файл Web.config строку, соответствующую вашему конструктору сайтов.
Она должна быть установлена перед любыми другими перенаправлениями, особенно перед перенаправлением на основной PHP-файл:
От SQLite к MySQL
В файле Configuration.php по-прежнему есть настройка, позволяющая принудительно использовать MySQL вместо SQLite, если SQLite не установлен на сервере.
В этом случае вам потребуется заполнить информацию о MySQL в этой части файла Configuration.php:
/** Advanced database configuration **/
/*
* In case you don't want to use Sqlite, you can use MySQL
* To do so, you need to fill the following variables
* Linguise will create the tables for you
*/
public static $db_host = '';
public static $db_user = '';
public static $db_password = '';
public static $db_name = '';
public static $db_prefix = '';