Ця тема добре розкрита в документації
Додати щось важко, важливо бути уважним. Тут будуть особливості.
Після налаштувань згідно з інструкцією автоматично обирає локаль в залежності від налаштувань браузера відвідувача.
Два варіанти перемикача (ставив в базовий шаблон)
перший – вказано тільки інші мови
{% if page %} {% for translation in page.get_translations.live %} {% get_language_info for translation.locale.language_code as lang %} <a href="{% pageurl translation %}" rel="alternate" hreflang="{{ language_code }}"> {{ lang.name_local }} </a> {% endfor %} {% endif %}
Другий – є усі локалі, налаштовані в settings/base.py
{% for language_code, language_name in LANGUAGES %} {% get_language_info for language_code as lang %} {% language language_code %} <a href="{% pageurl page.localized %}" rel="alternate" hreflang="{{ language_code }}"> {{ lang.name_local }} </a> {% endlanguage %} {% endfor %}
{% load i18n %}
{% get_current_language as LANGUAGE_CODE %}
<html class=”no-js” lang=”{{ LANGUAGE_CODE }}”>