КАК ПОСТРОИТЬ ВАВИЛОНСКУЮ БАШНЮ Мультиязычность/мультисайтовость Drupal  на примере одного сайта Алексей Гапонов, User Experience Design Group, Exigen Services
EXIGEN SERVICES Отделы продаж и центры разработки в 12 странах Четкое разделение — «регионы сбыта» — «регионы найма» Развитые направления услуг  Много проектов на Drupal — об этом чуть позже
С ЧЕГО ВСЕ НАЧАЛОСЬ Май 2008 — запуск проекта для корпоративных сайтов Exigen Services
НОВЫЙ САЙТ — ТРЕБОВАНИЯ Язык = домен Одинаковые URL в разных доменах Общие аккаунты и права пользователей Симметричный контент , перевод для каждой страницы
ВЫБРАННОЕ РЕШЕНИЕ 1 сайт CMS — Drupal 5 Мультиязычность — Localizer  (просто потому что ;)‏
3 МЕСЯЦА СПУСТЯ: НАЧАЛО ИСПОЛЬЗОВАНИЯ Разные требования к разным рынкам
3 МЕСЯЦА СПУСТЯ: НАЧАЛО ИСПОЛЬЗОВАНИЯ «У нас нет перевода для этой страницы. И не будет» «У нас нет вакансий в Бостоне» «Этот раздел будет только в русской версии»
НОВАЯ ФОРМУЛИРОВКА ТРЕБОВАНИЙ Различная структура сайтов для разных языков Некоторые элементы контента — общие, но с переводом (блоки)‏ Разные URL
«DRUPAL НА ПРОКАЧКУ» Видимость блоков «по языку» Хранение переводов блоков Названия не-node объектов Главная страница
«DRUPAL НА ПРОКАЧКУ» global $locale global $locale; switch ($locale) { case "ru": //do something break;
«DRUPAL НА ПРОКАЧКУ» Многоязычные заголовки через preprocess_page // exigenservices_preprocess_page if(stristr(drupal_get_title(),'=>')) { eval("\$localizedtitle =  array(".html_entity_decode(drupal_get_title()).");"); $vars['title'] = localizedtitle[$locale]; }
НОВЫЕ ПРОБЛЕМЫ Кэширование panels и блоков
НОВЫЕ ПРОБЛЕМЫ Трудности в поддержке: inline PHP
НОВЫЕ ПРОБЛЕМЫ Трудности в поддержке: все-в-одном
НОВЫЕ ПРОБЛЕМЫ http://englishsite/russkiy-url (привет, Гугл)‏
«Компания Exigen Services»  приобрела  китайского разработчика»
ПЕРСПЕКТИВЫ +4 языковых сайта потенциально — сайт на китайском языке
ВЗГЛЯД С ДРУГОЙ СТОРОНЫ «Кто будет это поддерживать?»
ИДЕЯ РАЗДЕЛЕНИЯ САЙТОВ «Лучшая мультиязычность — это мультисайтовость» (drupal.org)‏
«ВЕЛИКОЕ РАЗДЕЛЕНИЕ» Языковой домен = сайт в Drupal Общие аккаунты пользователей При необходимости — одинаковые URL для одинаковых по смыслу страниц
«ВЕЛИКОЕ РАЗДЕЛЕНИЕ» sitecopy.sql DROP TABLE IF EXISTS `ru_node`; CREATE TABLE IF NOT EXISTS `ru_node` ( `nid` int(10) unsigned NOT NULL auto_increment, # …  ); INSERT INTO `ru_node` SELECT * FROM `node`;
УБОРКА ТЕРРИТОРИИ Сайт копируется Копия содержит ноды на нескольких языках Задача: оставить только ноды на одном языке
УБОРКА ТЕРРИТОРИИ node_delete($nid) и прикрепленные файлы
УБОРКА ТЕРРИТОРИИ Backup спасает жизни  (и нервы)‏
КАК ВСЕ ОБСТОИТ СЕЙЧАС exigenservices.com exigenservices.ru exigenservices.se exigenservices.de exigenservices.lt exigenservices.lv exigenservices.com.ua exigenservices.co.cn
КАК ВСЕ ОБСТОИТ СЕЙЧАС «Какой сайт Вы хотите скопировать?»
РЕКОМЕНДАЦИИ Оценивайте структуру контента
РЕКОМЕНДАЦИИ Оценивайте аудиторию
РЕКОМЕНДАЦИИ Оценивайте ресурсы на поддержку
РЕКОМЕНДАЦИИ Backup, backup, backup
РЕКОМЕНДАЦИИ Помни о Вавилоне ;)‏
EXIGEN SERVICES Отделы продаж и центры разработки в 12 странах Четкое разделение — «регионы сбыта» — «регионы найма» Развитые направления услу г   Много проектов на Drupal —  нам нужны Drupal-ниндзя ;)‏
ВАШИ ВОПРОСЫ
СПАСИБО! Skype: yoppt.spb.ru [email_address]

More Related Content

PPTX
HighLoad Sites, Oleg Bunin
PDF
Project Office.Net - marketing plan
PDF
Internet aplikacii razvoj marketig
PDF
Лилия Горбачик
PDF
Elina kuzyutkina-hitrosti-i-tryuki-v-ispolzovanii-zabbix
PDF
Quick and Clean with Ruby on Rails
PPTX
video hostings architecture
PDF
владышев Zabbix Rootconf2009
HighLoad Sites, Oleg Bunin
Project Office.Net - marketing plan
Internet aplikacii razvoj marketig
Лилия Горбачик
Elina kuzyutkina-hitrosti-i-tryuki-v-ispolzovanii-zabbix
Quick and Clean with Ruby on Rails
video hostings architecture
владышев Zabbix Rootconf2009

What's hot (19)

PDF
Class Hierarchies in Relational Databases
PPT
Что нового в Drupal 7
ODP
Платформы Java и .NET. Современные концепции ООП
PPTX
Sapka Contest 2009 (RU)
PDF
Tech Success
PPSX
Sergey Ch Hp Citrix Keynote 2009
PPTX
романов использование Share Point Server для решения задач документооборта и ...
PPT
Будущее систем ВКС для дистанционного образования
PDF
Интерактивный терминал: Perl, XML и Firefox‎
PDF
Комп'ютерні віруси
PDF
Щастливият програмист
PPSX
Решение по управлению web-контентом от компании Oracle.
PDF
будневич Rc Resolver
PDF
箱根湯けむり事件簿
PDF
JAM4ME
DOC
Критерии оценки презентации
PPTX
компьютер изнутри
PPTX
Class Hierarchies in Relational Databases
Что нового в Drupal 7
Платформы Java и .NET. Современные концепции ООП
Sapka Contest 2009 (RU)
Tech Success
Sergey Ch Hp Citrix Keynote 2009
романов использование Share Point Server для решения задач документооборта и ...
Будущее систем ВКС для дистанционного образования
Интерактивный терминал: Perl, XML и Firefox‎
Комп'ютерні віруси
Щастливият програмист
Решение по управлению web-контентом от компании Oracle.
будневич Rc Resolver
箱根湯けむり事件簿
JAM4ME
Критерии оценки презентации
компьютер изнутри

Viewers also liked (9)

PPTX
MCFX Marketing Plan with Facebook Affiliate
PPS
PPTX
Белочка. Я пришла! Парадоксы бренда _ кейс
PDF
Branch Illustration - UAE Exchange
DOCX
Uae exchange
PDF
Foreign exchange market and it's structure in india
PDF
Thomas Cook Project
PPTX
Forex ppt
PPTX
Foreign exchange market-final ppt(my)
MCFX Marketing Plan with Facebook Affiliate
Белочка. Я пришла! Парадоксы бренда _ кейс
Branch Illustration - UAE Exchange
Uae exchange
Foreign exchange market and it's structure in india
Thomas Cook Project
Forex ppt
Foreign exchange market-final ppt(my)

Как построить Вавилонскую башню. Мультиязычность/мультисайтовость Drupal на примере одного сайта