Wagtail in mehrsprachig

8. Dezember 2020 0 Von glanzel

Wagtail besitzt seit Version 11.2 von hause aus die Option der Mehrsprachigkeit. Das ganz wird hier ausführlich beschrieben:
https://docs.wagtail.io/en/v2.11.2/advanced_topics/i18n.html

Wichtig ist das dabei nur angelegt wird wie der mehrsprache page tree aufgebaut und angezeigt wird. Der konkrete Übersetzungs workflow ist damit noch nicht abgedeckt.

Dies passiert zusätzlich etwas mit
https://github.com/wagtail/wagtail-localize

Wichtig: Werden die Daten der Quelle geändert so müssen sie zuerst veröffentlicht werden und dann mit sync syncronisiert bevor sie zur Übersetzung vorgeschlagen werden.

Um zwischen den verschiednen Sprachen zu wechseln kann etwas folgendes snippet verwendet werden:

{% load static wagtailuserbar i18n wagtailcore_tags %} 

{% get_current_language as current_lc %}
   {% get_available_languages as LANGUAGES %}
        <div class="languages">
            {% for language_code, language_name in LANGUAGES %}
                {% if language_code == current_lc %} <b> {%endif %}
                {% if language_code != "en" %} | {%endif %}
                {% language language_code %}
                    <a href="{% pageurl page.localized %}" rel="alternate" hreflang="{{ language_code }}">{{language_code}}</a>
                {% endlanguage %}
                {% if language_code == current_lc %} </b> {%endif %}
            {% endfor %}
        </div>