Как получить host и pathname на примере мультиязычного сайта?

Добрый день. Задача в том, чтобы получить версию языка сайта из location.href.
Например, главная страница сайта имеет адрес site.fi
Англоязычная версия этого же сайта имеет адрес site.fi/en
Еще потенциально могут быть версии и для других языков - site.fi/ru, site.fi/est и т.д.
У сайта есть внутренние страницы, например:
site.fi/arkisto
site.fi/en/archive
site.fi/en/archive/somethingelse

В зависимости от того, что сейчас открыто - fi, или fi/[ЯЗЫК], нужно совершить в js некоторые действия.
Вопрос - как это определить?

Получить расширение домена не проблема -

let link = document.createElement('a');
     link.href = document.location.href;

let linkDom = link.host.split('.')[1];


Так я узнаю, что сайт - fi.
А вот как дальше узнать, что он (после fi/) - en, ru, est и все что еще может быть?
Сложность в том, что если он fi (то есть чисто финская версия), то меня не интересует pathname вообще. Но если он fi/[ЯЗЫК] - то меня интересует часть строки после fi/ и до следующего "/".
  • Вопрос задан
  • 114 просмотров
Решения вопроса 1
TerNik
@TerNik
let lang = location.pathname.split('/')[1];
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
PavelMonro
@PavelMonro
Что то вроде такого (jquery):
if (location.href.indexOf('/en/') > -1) {
    $("body").addClass("eng-lang");
}

Js:

url = window.location.href;
if( url.match(/en/) ) {
   alert("eng-lang");
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы