Возникла мысль: использовать один шаблон с англоязычными элементами в оформлении шапки сайта для 4 разных сайтов (вместо бывших 4 разных шаблонов).
Эти сайты лежат в папках в корне сайта, контент сайтов на 4 языках - турецкий, китайский, испанский, английский. Инфоблоки для каждого сайта отдельно, набор страниц тоже.
Дальше что нужно - в header подключать какие-то куски кода (например, разные мета-описания и ключевые слова).
Для этого делаем отдельный include на каждую папку сайта.
p.s.: решение выполнено и представлено для сайтов Белгородского государственного университета, а именно:
На вышеуказанных сайтах реализован выбор по "путям" , какие будут подключаться картинки с логотипом (в зависимости от версии сайта), какие иконки в боковых полях, а так же служебные файлы - для СЕО, для панеделй яндекс-вебмастер, гугл, метрики, аналитики и прочие пузомерки. Привожу часть кода, где суть будет понятна.
p.s.: соглашение о "конфиденциальности" мною не подписывалось, проактивный фильтр битрикса и "ломануть" при желании обойти всегда можно, если знать как =)
$host = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
$lang_array = explode("/", $host);
$lang = $lang_array[3];
if ($lang == 'en'){require($_SERVER["DOCUMENT_ROOT"]."/include_lang/en.php");} else
if ($lang == 'spain'){require($_SERVER["DOCUMENT_ROOT"]."/include_lang/spain.php");} else
if ($lang == 'china'){require($_SERVER["DOCUMENT_ROOT"]."/include_lang/china.php");} else
if ($lang == 'turkey'){require($_SERVER["DOCUMENT_ROOT"]."/include_lang/turkey.php");}
?>
if ($lang == 'en'):
$img_logo = logo_english;
elseif ($lang == 'spain'):
$img_logo = logo_spain;
elseif ($lang == 'china'):
$img_logo = logo_china;
elseif ($lang == 'turkey'):
$img_logo = logo_turkey;
endif
?>
IncludeFile("search/search_form.php", Array("SEARCH_PAGE" => SITE_DIR."search/index.php"));?>
Апдейт записи через два дня - посетила уникальная мысль
для сайтов
http://www.bsu.edu.ru/en/http://www.bsu.edu.ru/china/http://www.bsu.edu.ru/spain/http://www.bsu.edu.ru/turkey/анализируется адрес в переменной $host, затем отсекаются символы слэша функцией explode, в переменную записываются как массив полученные значения:
$lang_array[0] = en
$lang_array[1] = china
$lang_array[2] = spain
$lang_array[3] = turkey
значит код укоротим:
$lang_array = explode("/", $host);
$lang = $lang_array[3];
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/templates/bsu_red_blue_english/include_lang/".$lang.".php");
?>
если надо инклудить отдельно файлы, то вписываем всего одну строчку:
и обзывать файлы:
include_en.php
include_china.php
include_spain.php
include_turkey.php