Каков наилучший способ сделать пользовательский переключатель языка на сайте.
Моя проблема в том, что у меня есть сайт с двумя языковыми версиями, и мой пользовательский переключатель языка немного проблематичен, я бы сказал.По какой-то причине он работает не на всех страницах, и, на мой взгляд, это очень сложный код.На нашем сайте языковые версии меняются через URL.Например, mycompany.fi/ - это версия на основном языке, а mycompany.fi/en/ - для версии сайта на английском языке.Вот код, как я переключаю язык в настоящее время, просто изменив URL.В коде он проверяет URL-адрес, а также проверяет, есть ли у страницы translation_content.После этого я помещаю site_language и other_language в ссылки, поэтому, нажимая на ссылку, она меняет язык.
{% if absolute_url is string_containing "/en-us/" %}
{% set site_language = 'en' %}
{% set other_language = 'fi' %}
{% if content.translated_content['fi-fi'] %}
{% set other_language_url = '/' + content.translated_content['fi-fi'].slug %}
{% elif content.translated_content['fi'] %}
{% set other_language_url = '/' + content.translated_content['fi'].slug %}
{% else %}
{% set other_language_url = '#' %}
{% endif %}
{% elif absolute_url is string_containing "/en/" %}
{% set site_language = 'en' %}
{% set other_language = 'fi' %}
{% if content.translated_content['fi-fi'] %}
{% set other_language_url = '/' + content.translated_content['fi-fi'].slug %}
{% elif content.translated_content['fi'] %}
{% set other_language_url = '/' + content.translated_content['fi'].slug %}
{% else %}
{% set other_language_url = '#' %}
{% endif %}
{% else %}
{% set site_language = 'fi' %}
{% set other_language = 'en' %}
{% if content.translated_content['en-us'] %}
{% set other_language_url = '/' + content.translated_content['en-us'].slug %}
{% elif content.translated_content['en'] %}
{% set other_language_url = '/' + content.translated_content['en'].slug %}
{% else %}
{% set other_language_url = '#' %}
{% endif %}
{% endif %}
Мне интересно, есть ли другой способ сделать это, потому что для меня это кажется очень сложным решением.Я хотел бы знать, существует ли какая-либо глобальная переменная или что-то, что определяет текущий язык, используемый на странице.