Установите функцию автоматического перевода Linguise в Concrete CMS

Содержание

Технические требования 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 являются популярными системами баз данных, используемых для хранения и управления данными для веб -сайтов и приложений. Тем не менее, они предназначены для различных вариантов использования и имеют некоторые ключевые различия:

ФункцияSQLiteMysql
НастраиватьОчень просто (требуется установка SQLite)Требуется настройка сервера
ХранилищеОдин файлУправляется MySQL Server
ПроизводительностьОтлично подходит для мелких приложенийЛучше для крупных систем с высоким трафиком
Сценарий использованияМестные приложения, тестирование, небольшие сайтыВеб -приложения, электронная коммерция, корпоративные системы

Интерфейс сценария Linguise : настройка для платформы PHP

Дополнительная панель Linguise перевода, ранее доступная только для Joomla и WordPress, теперь расширяет поддержку PHP и дополнительные платформы. Это обновление позволяет пользователям плавно настраивать настройки языка - например, параметры отображения, стили флагов и настройка внешнего вида - прямо из унифицированного интерфейса, независимо от их CMS или Framework.

API-Interface

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

дисплей-интерфейс
Внешний интерфейс
Мы понимаем, что настройка URL-адресов и переключения языка может быть немного сложной с технической точки зрения; но есть и хорошие новости! Мы предлагаем бесплатную установку

3. Настройте переадресацию URL-адресов в Concrete CMS

По умолчанию в Concrete CMSвключена функция переадресации URL-адресов. Если это не так, вы можете активировать её у своего хостинг-провайдера.

Языковые настройки URL-адресов необходимо внести в файл .htaccess. Просто скопируйте приведенный ниже код после кода « RewriteEngine on » , доступного в стандартной Concrete CMS .htaccess.

				
					<IfModule mod_rewrite.c>
  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]
</IfModule>
				
			

В итоге , ваш Concrete CMS должен выглядеть примерно так:

				
					<IfModule mod_rewrite.c>
    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]
</IfModule>

				
			

Теперь вы можете загружать все переведенные страницы, используя URL-адрес, например: www.concretewebsite.com/fr/

Теперь давайте загрузим переключатель языка.

Мы понимаем, что настройка URL-адресов и переключения языка может быть немного сложной с технической точки зрения; но есть и хорошие новости! Мы предлагаем бесплатную установку

4. Активируйте переключатель языка

4.1 Загрузка скрипта Linguise JS

Для отображения переключателя языков с флагами и альтернативными URL-адресами в заголовках HTML (в целях SEO) необходимо загрузить ссылку на скрипт Linguise JS на всех страницах вашей Concrete CMS .

Чтобы скопировать ссылку на скрипт, перейдите в настройки домена на панели управления Linguise и скопируйте ссылку на скрипт.

График, иллюстрирующий этапы установки модуля. На графике показана синяя пунктирная линия, идущая вверх.

Самый простой способ загрузить этот код в Concrete CMS — добавить его в файл header.php . код.

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

Однако, если вы используете другую тему, отличную от темы по умолчанию, вам потребуется вставить этот код в файл header.php , который находится в папке темы .

Отредактируйте файл скрипта, добавив ссылку на скрипт в раздел заголовка, как показано ниже.

скрипт-в-конкрете-cms

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

Concrete-cms-language-switcher

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

Настройка переключателя языка

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

Скриншот, показывающий раскрывающееся меню для выбора языковых настроек с вариантами для английского языка.

В правой части экрана отображается предварительный просмотр переключателя языка. Вот элементы, которые вы можете настроить:

  • 3 макета: бок о бок, выпадающий или всплывающий
  • Позиция переключателя языка
  • Содержимое переключателя языка
  • Названия языков на английском или родном языке
  • Формы и размер флагов
  • Цвета и тень от коробки

Загрузите переключатель языка в контент Concrete CMS

положение флага на месте

Чтобы отобразить переключатель языков в нужном месте в Concrete CMS , необходимо установить позицию «На месте».
После установки позиции в Linguise можно добавить приведенный ниже шорткод. Щелкните по коду ниже, чтобы вставить его в буфер обмена.

				
					<div>&#091;linguise&#093;</div>
				
			

После добавления на фронтенде названия флага и языка будут отображаться в HTML-области, куда вы добавили код.

Активируйте опцию локального кэширования

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

В дополнение к этому, вы можете задать объем кэша, хранящегося в МБ. В следующем примере кэш активирован, и объем кэша для хранения составляет 500 МБ.

Пример кода конфигурации перевода Laravel . Конфигурация для настройки переводов.
				
					    /** Basic configuration **/
    public $cache_enabled = true;
    public $cache_max_size = 500; // In megabyte
				
			

Автоматический перевод на серверах NGINX

Добавьте строку, соответствующую вашей CMS, в блок конфигурации вашего сервера NGINX.
Его следует установить до любых других перенаправлений, особенно до перенаправлений в основном PHP-файле.
				
					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-файл:

				
					<rule name="Linguise" stopProcessing="true">
<match url="^(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)(?:$|/)(.*)$" ignoreCase="false" />
        <conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
            <action type="Rewrite" url="linguise/linguise.php?linguise_language={R:1}&amp;original_url={R:2}" appendQueryString="true" />
</rule>
				
			

От 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 = '';