Створення сайту на декількох мовах

Добрий день шановні відвідувачі,

сьогодні хочеться продовжити написання корисних порад по роботі з DataLife Engine. Як відомо це дуже потужний і гнучкий інструмент створення власного порталу. З кожним днем його можливості розширюються, але не завжди деяким користувачам зрозуміло як використовувати ту або іншу можливість. Одним з нововведень версії 5.1 є повна підтримка ведення сайту на декількох мовах. Але так як DataLife Engine це не шаблонний движок один на всіх, а гнучкий конструктор для створення сайту, то рядки “Англійська писати тута” ви не знайдете. Метою даної статті є розповісти вам як створити сайт на яких буде підтримуватися написання статей на декількох мовах.

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

Припустимо у нас є шаблони
/templates/russian/
/templates/english/

Також нам знадобиться два мовних пакету для скрипта
/language/ukrainian/
/language/english/

Далі в админпанеле налаштуваннях скрипта вказуємо шаблон за замовчуванням russian, мову за замовчуванням також вказуємо russian.

Тепер нам потрібно щоб кожному з наших шаблонів відповідав необхідний нам мовний пакет, щоб при перемиканні з одного шаблону на інший, змінювався б також мова системних повідомлень скрипта. Для цього заходимо в Адмінпанель скрипта -> Інші розділи -> Шаблони сайту і встановлюємо для кожного шаблону Використовується мова, тобто для шаблону russian призначаємо мова russian, для шаблону english призначаємо мова english

Наступним етапом є додавання перемикання мов для відвідувачів сайту. Для цього в main.tpl створимо два посилання наприклад:
Російська
Англійська
Тепер при переході за цим посиланням користувач буде міняти свій шаблон, а разом з ним і мова системних повідомлень скрипта.

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

Створюємо нове додаткове поле з наступними параметрами:

Назва поля: english
Опис поля: Англійська коротко
Категорія: Всі
Тип поля: Декілька рядків

Далі відкриваємо в шаблоні англійської мови templates/english/ файл shortstory.tpl і міняємо в ньому тег {short-story} на тег додаткового поля [xfvalue_english]. тепер при зміні користувачем на сайті російської мови на англійську то сама новина також буде виводитися англійською. Правда тепер забувайте писати новини на двох мовах. За аналогією ви можете додати додаткове поле і для перегляду повної новини.

Ну ось власне і все пані та панове

Удачі вам у побудові власних сайтів.
124