Доброго времени суток.
Есть необходимость перенаправлять пользователя в часть сайта с его языком. по средствам js.
Нашел приемлемы скрипт, который прекрасно с этим справляется:
var myLngHost = 'site1.ru'; //сюда водим адрес сайта без www.
var myDefSubDomain = ''; // www or empty - тут если сайт работает как [url]www.site1.ru[/url] то пишем www, иначе пусто.
var myLngDef = 'ru'; //определяем какой сайт грузить если язык браузера например японский, т.е. язык по умолчанию для неописаного домена.
var myLngArray = {
'ru': myDefSubDomain,
'by': myDefSubDomain,
'ua': myDefSubDomain,
'de': 'de',
'fr': 'fr',
'es': 'es',
'en': 'en'
}; // настройки куда что редиректить, в данном случае русский/беларусский/украинский на основной сайт редиректит. 'de':'de','fr':'fr','es':'es' - это если есть еще какие то поддомены
var myLngSite = myGetCookie('myLngSite');
if (!myLngSite && location.pathname == '/') {
myCheckLng();
}
function myCheckLng() {
var myLngBrowser = (navigator && navigator.language) ? navigator.language.replace(/(\w{2})(.*)/, '$1') : myLngDef;
var myLngSubDomain = myLngArray[myLngBrowser] || myLngArray[myLngDef];
var myLngNeedDomain = (myLngSubDomain ? myLngSubDomain + '.': '') + myLngHost;
mySetCookie('myLngSite', 'init', 30);
if (location.hostname != myLngNeedDomain) {
window.location = 'http://' + myLngNeedDomain;
}
}
function mySetCookie(name, value, expdays) {
var today = new Date();
var exdate = new Date();
exdate.setDate(exdate.getDate() + expdays);
document.cookie = name + "=" + escape(value) + (expdays ? "; expires=" + exdate.toUTCString() : "") + ";path=/;domain=" + location.hostname;
}
function myGetCookie(name) {
var prefix = name + "="
var cookieStartIndex = document.cookie.indexOf(prefix)
if (cookieStartIndex == -1) return null
var cookieEndIndex = document.cookie.indexOf(";", cookieStartIndex + prefix.length)
if (cookieEndIndex == -1) cookieEndIndex = document.cookie.length
return unescape(document.cookie.substring(cookieStartIndex + prefix.length, cookieEndIndex))
}
Только вот он перенаправляет на субдомен, т.е. ru.site.ru, en.site.ru,.. и т.д.
А мне нужно в раздел сайта - site.ru/ru, site.ru/en,..
И что-то до меня не как не доходит, что в нем надо изменить, для получение желаемого результата
Может кто то, уже делал подобное?