Бесплатная CMS  - Limbo CMS (система управления сайтом)
Главная

Навигация
Сайт
Каталог
Материалы сайта

RSS

Мультиязычность для Limbo 1.0.4 Версия для печати
06.06.2006 6187 Опубликовал: Serebro
Недавно мне сново потребовалось создать сайт с многоязыковой поддержкой. Времени на разработку сложных комбинаций не было, пришлось хитрить. Вот что получилось.

Инструкция, как из имеющегося сайта сделать мультиязычный сайт

1. Перезаписать файлы indеx.php и index2.php корневого каталога движка. Файлы берем отсюда
2. Сделать бэкап БД: System - Database - Manage backups - Backup
3. Скачать полученный файл хххххххххх.sql (Физически он находится в data/backups/)
4. Сделаем с него две копии. Одну назовём english.sql, другую russian.sql
5. Открывем файл russian.sql в любом текстовом редакторе (notepad.exe). Cделаем по файлу поиск и замену. Ищем префикс БД (по умолчанию "lm_") и заменяем его на "russian_" (без кавычек, конечно)
6. Делаем тоже самое для "english_"
7. Загружаем полученные 2 файла на сервер: System - Database - Manage backups - Upload
8. Делаем для каждого из двух наших файлов "Restore"
9. Подкорректируем config.php: "$lm_prefix='lm_';" заменим на "$lm_prefix='russian_';"
10. Переключится на нужную БД со своим языком из админки:
(My site - Global configuration - Database - Database Prefix = english_)
или
(My site - Global configuration - Database - Database Prefix = russian_)
11. Перход на нужный язык по ссылке:
"index .php?lng=russian" или "index .php?lng=english"


Примечание: Префиксы БД "english_", "russian_" должны совпадать с названиями установленных на сайте языков.

С этого момента обе ваши БД живут отдельной друг от друга жизнью, т.е. если вы установили модуль в одной из них, то тоже должны сделать и с другой. Общим для БД остануться файлы ядра, установленных компонентов, модулей, темплейтов и т.п.

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

English
Switch to English...
BabelFish.AltaVista.com auto-translate
Скачать Limbo