Размышлизмы на тему мультиязычного сайта или как это сделатьНа данный момент моя работа в фирме направлена на мультиязычность наших сайтов – я выкладываю новые переводы сайта, а так же разрабатываю систему автоматизации тиражирования сайта. С учетом всего вышесказанного, я хотел поделиться своими мыслями по поводу “Как сделать мультиязычный сайт?“.
Задача: реализовать мультиязычный сайт и выделить в отдельный класс, где: сайт использует шаблоны, сессии и куки; не использует бд для хранения статического контента (если использовать бд – класс модифицируется очень просто); использует файлы для хранения статических страниц и шаблонного контента.
Рассмотрим структуру такого сайта сверху вниз, т.е. начиная с вывода содержимого сайта в шаблоне и заканчивая методами класса.
<? //указываем, что сайт будет использовать сессии @session_start(); //подключаем файл класса require_once 'system/main. class. php'; //создаем объект класса langSys $langsys = new langSys; //управление навигацией if (isset($_GET['do'])) { $page = $_GET['do']; $_SESSION['langsys_page'] = $page; header("Location: " . $langsys->domain . '?page=' . $page); } else if (!isset($_GET['page']) && !isset($_GET['lang'])) { $_SESSION['langsys_page'] = $langsys->startPage; $langsys->page = $_SESSION['langsys_page']; } //если меняем язык (!isset($_GET['lang']))? '' : $langsys->changeLang($_GET['lang']); ?> //шаблон <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4. 01 Transitional//EN" "http://www. w3. org/TR/html4/loose. dtd"> <html> <head> <meta name="KeyWords" content=""> <meta name="Description" content=""> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <title>I'm Language System</title> </head> <body> <div style="width:95%;margin:auto;padding-top:15px;"> //форма для управления языком <div style="text-align:center;margin-bottom:15px;"> <a href="?lang=ru">Rus</a> | <a href="?lang=en">Eng</a> </div> //вывод содержимого страницы <div style="float:left;width:80%"> <?=$langsys->getContentByLang($langsys->page, $langsys->lang)?> </div> //вывод меню <div style="width:10%; margin-left:30px;float:right;"> <ul> <li><a href="?do=about"><?$langsys->translate(1);?></a></li> <li><a href="?do=faq"><?$langsys->translate(2);?></a></li> <li><a href="?do=advert"><?$langsys->translate(3);?></a></li> <li><a href="?do=descript"><?$langsys->translate(4);?></a></li> </ul> </div> </div> </body> </html>
Перед вами собственно шаблон сайта, где будет выводиться наш мультиязычный контент. Если идея уже понятна, то хорошо, но все же я хочу пояснить, что же я тут написал и как оно работает. Вернутся Вам будет интересно:
|
- Публикации
Итак, у вас имеется свой собственный форум, но его никто не посещает? Мы готовы помочь вам справиться с этой нелегкой проблемой.
Данная статья в основном рассчитана на тех, кто самостоятельно занимается продвижением своего проекта.
Проклял все настройки кодировок, проклял DirectAdmin и еле-еле нашел то место где располагается и задается общий пароль для ...
Твиттер уже давно стал из нового web 2. 0 сервиса рекламной площадкой с огромным количеством потенциальных пользователей ...
Самое время кратко описать, чем нам придется заниматься. Прежде всего нужно понять, что блог ты будешь делать для получения ...
Долго не знал с чего начать данную статью. Статья что-то типа мыслей вслух и философии.