Добрий день! Уточніть, будь ласка, покроково, як реалізувати мультимовність на одному сайті? Не зовсім зрозуміло, де зберігається мовна версія, якщо це не інший сайт? Як налаштовується локалізація для мовної версії? Маю на увазі стандартні переклади локалізації Бітрікс. Як перекласти статичні сторінки та корзину? Чи всі нестандартні компоненти можна перекласти змінивши клас, як на відео ?
Як правильно реалізувати Мультимовність на одному сайті?
До прикладу поясню, як розгорнути каталог на іншій мові на одному сайті. Є у вас папка /catalog/ на рідній мові, що потрібно зробити, щоб цей же каталог відкривався і на англійській мові.
Корзину також треба скопіювати як каталог. В каталозі налаштувати новий шлях до корзини на поточній мові.
Майже всі компоненти можна адаптувати на роботу з нашим модулем. Ми так адаптували ASPRO та DW.DELUXE.
- Створити додаткову мову в адмінці /bitrix/admin/lang_admin.php?lang=ua з кодом en
- Створити підпапку в корені сайту /en/ (це буде головна сторінка англійської мови)
- Скопіювати папку /catalog в папку /en , щоб було /en/catalog
- В режимі редагування індексної сторінки /en/catalog/index.php встановити дві константи до підключенню прологу SITE_DIR та LANGUAGE_ID:
Код <? define("SITE_DIR",'/en/'); // потрібно для коректної роботи меню та навігаційного ланцюжка define("LANGUAGE_ID", 'en'); // Потрібно для встановлення глобальної мови на даній сторінці require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php"); ?> - В налаштуваннях ЧПУ компоненту каталогу змінити SEF_FOLDER з /catalig/ на /en/catalog/, щоб правильно відкривались товари.
- Каталог готовий!
Корзину також треба скопіювати як каталог. В каталозі налаштувати новий шлях до корзини на поточній мові.
Майже всі компоненти можна адаптувати на роботу з нашим модулем. Ми так адаптували ASPRO та DW.DELUXE.
На відео показано, як легко перевизначаються класи в компонентах, для роботи з мультимовністью.
Достатньо просто підключити в коді наш модуль, а далі перевизначити класи.
Якщо, Ви бажаєте писати кастомні компоненти, або адаптувати сторонні компоненти, я думаю, для цього Вам потрібно звернутись до вашого фахівця, або звертатись до нас в рамках додаткових технічних завдань.
Достатньо просто підключити в коді наш модуль, а далі перевизначити класи.
Якщо, Ви бажаєте писати кастомні компоненти, або адаптувати сторонні компоненти, я думаю, для цього Вам потрібно звернутись до вашого фахівця, або звертатись до нас в рамках додаткових технічних завдань.
Читають тему