Встановлення автоматичного перекладу Linguise на Concrete CMS

Зміст

Технічні вимоги Concrete CMS

Для використання нейронного автоматичного перекладу з Concrete CMS знадобиться PHP-скрипт (можна завантажити нижче). Щоб встановити скрипт Linguise , вам знадобляться такі вимоги:

  • Запустіть PHP 7.3+
  • Apache, IIS-сервер, NGINX
  • Переконайтеся, що на вашому сервері активовано перезапис URL-адрес
  • Concrete CMS 9 і вище

1. Згенеруйте ключ API

Після підключення або реєстрації на панелі керування Linguise вам спочатку потрібно налаштувати новий домен і зберегти його налаштування, щоб отримати ключ API.

Ви можете вибрати платформу «Інший PHP», щоб продовжити реєстрацію домену в Linguise , як-от ця документація, а також вихідна та цільова мови.

Налаштування платформи веб-сайту та мови перекладу

Після цього ви отримаєте:

  • Ключ API, який підтверджує ваше членство
  • Посилання на скрипт Linguise для перемикача мов
Знімок екрана веб-сторінки з відео про переклад веб-сайту

Ключ API – це те, що потрібно для активації перекладу на вашому веб-сайті Concrete CMS . По суті, ключ API перевірить, яка мова активована на вашому домені, і дозволить автоматичний переклад контенту.

Наразі ви можете скопіювати ключ API та зберегти його в буфері обміну.

2. Завантажте та підключіть скрипт перекладу Linguise

Скрипт перекладу Linguise потрібно завантажити на ваш сервер, де встановлено Concrete CMS . Завантажте його тут.

Після завантаження скрипта розпакуйте його та завантажте в кореневу папку, де встановлено Concrete CMS .

  • Переконайтеся, що він розміщений на кореневому рівні вашого веб-сайту (де знаходяться ваші файли Concrete CMS
  • Переконайтеся, що папка зберігає свою назву за замовчуванням « linguise »

Як отримати доступ до інтерфейсу скриптів Linguise ?

Після завершення Linguise ви можете отримати доступ до панелі інструментів, відвідавши свій веб-сайт з URL-адресою такого формату
linguise https://www.domain.com/linguise

Змініть адресу домену відповідно до адреси вашого веб-сайту*
Переконайтеся, що Linguise має належні дозволи на читання та запис*

Налаштування пароля та підключення до бази даних

Після доступу до інтерфейсу скрипта вам буде представлено екран налаштування, де ви зможете створити пароль і підключитися до потрібної вам бази даних.

Ви можете:

  • Встановіть пароль, який буде потрібен для подальшого доступу до цього інтерфейсу.
  • Виберіть тип бази даних — MySQL або SQLite, залежно від ваших налаштувань та уподобань.

Це початкове налаштування забезпечує безпечний доступ і дозволяє налаштувати скрипт відповідно до вашого середовища.

Підключення до бази даних MySQL

Якщо ви оберете MySQL, з’явиться інший інтерфейс із запитом на введення наступних даних про підключення в полях конфігурації MySQL, наведених нижче:

Переконайтеся, що інформація правильна, щоб встановити успішне підключення до вашої бази даних MySQL. 

MySQL проти SQLite – у чому різниця?
Як MySQL, так і SQLite – це популярні системи баз даних, що використовуються для зберігання та керування даними для веб-сайтів і програм. Однак вони розроблені для різних випадків використання та мають деякі ключові відмінності:

ОсобливістьSQLiteMySQL
НалаштуванняДуже просто (потрібна установка SQLite)Потрібне налаштування сервера
СховищеОдин файлКерується сервером MySQL
ПродуктивністьЧудово підходить для невеликих додатківКраще підходить для великих систем з високим трафіком
Сценарій використанняЛокальні додатки, тестування, невеликі сайтиВеб-додатки, електронна комерція, корпоративні системи

Інтерфейс скриптів Linguise : налаштування для платформи PHP

Панель перекладу Linguise , раніше доступна лише для Joomla та WordPress, тепер розширює підтримку на PHP та інші платформи. Це оновлення дозволяє користувачам безперешкодно налаштовувати мовні параметри, такі як параметри відображення, стилі прапорців та налаштування зовнішнього вигляду, безпосередньо з єдиного інтерфейсу, незалежно від їхньої CMS чи фреймворку.

API-інтерфейс

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

інтерфейс дисплея
зовнішній вигляд-інтерфейсу
МИ РОЗУМІЄМО, ЩО НАЛАШТУВАННЯ URL-АДРЕСІВ ТА ПЕРЕКЛЮЧЕННЯ МОВ – ДРОГИ ТЕХНІЧНО СКЛАДНІ ПОДРОБИ; АЛЕ Є ГАРНІ НОВИНИ! МИ ПРОПОНУЄМО БЕЗКОШТОВНЕ ВСТАНОВЛЕННЯ

3. Налаштування перезапису URL-адрес Concrete CMS

За замовчуванням перезапис URL-адрес активний у Concrete CMS. Якщо це не так, ви можете активувати його у свого хостинг-провайдера.

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 Завантаження JS-скрипта Linguise

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

Щоб скопіювати посилання на скрипт, на панелі інструментів Linguise перейдіть до налаштувань домену та скопіюйте посилання на скрипт.

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

Найпростіший спосіб завантажити цей код у Concrete CMS – додати його всередину header.php або код.

Ви можете налаштувати це, виконавши такі кроки: перейдіть до панелі адміністратора , а потім праворуч перейдіть до розділу Система та налаштування > SEO та статистика > Коди відстеження . За замовчуванням ви можете використовувати цей метод.

Однак, якщо ви використовуєте іншу тему, відмінну від тієї, що встановлена ​​за замовчуванням, вам потрібно буде вставити код у файл header.php , який можна знайти в папці теми .

Відредагуйте файл скрипта, щоб включити посилання на скрипт у розділ заголовка, як показано нижче.

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

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

Перемикач мов Concrete-cms

Важливе зауваження щодо 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 = '';