Lupe Suche
Responsiv Devices

Fluent (Translation)

Die aktualiserten SS4 Versionen brauchen ein neues "Translation"-Modul.

fluent

https://github.com/tractorcow-farm/silverstripe-fluent

Installation

  • Fluent kann leicht auf jeder bereits entwickelten Website installiert werden, muss aber mit Composer installiert werden.
composer require tractorcow/silverstripe-fluent ^5
  • Führen Sie einen "https://.../dev/build" durch, um sicherzustellen, dass alle zusätzlichen Tabellenfelder generiert wurden.
  • Konfigurieren Sie Ihre Gebietsschemata im Bereich
    "https://.../admin/locales"
  • Veröffentlichen Sie bestehende Seiten in allen Sprachräumen, in denen sie sichtbar sein sollen. Erstellen Sie neue Inhalte im gewünschten Sprachraum

Fluent wird SiteTree-Objekte automatisch lokalisieren. Wenn Sie andere DataObjects lokalisieren möchten, müssen Sie die entsprechende Erweiterung selbst hinzufügen.

Gebietsschema hinzufügen

Um die einzelnen Seiten einem Sprachraum hinzuzufügen müssen erst welche erstellt werden. (Beispiel: Deutsch / Englisch)

Nach de Installation müssen zuerst Sprachräume durch hinzufügen von "Gebietsschema"erstellt werden

Es werden die Sprachen "Deutsch" (default) und "Englisch" vorbereitet. Die URL-Segmente klassisch mit "de_DE", "en_EN" gesetzt

Seiten der gewünschten Sprache zuordnen

Über die Sprachwahl-Buttons kann der Seitenbaum gewechselt weden und bestehende oder neue Seiten einem Sprachraum zugeordnet werden.

Eine Seite nur in einer Sprache

Wird die Seite in "Deutsch" erstellt, entsteht eine Kopie in "Englisch". Das Duplikat wurde erstellt, aber es ist nicht aktiv. Sie kann übersetzt und veröffentlicht werden oder einfach gelöscht.

Mit dem Button "Übersetzungen" können die einzelnen Inhalte jederzeit editiert, kopiert oder gelöscht werden.

Das Template für "fluent"

Die Installation des "Translaters" liegt im Verzeichnis: vendor/tractorcow/silverstripe-fluent/templates
Darin befindet sich die Datei: LocaleMenu.ss

Sie kann einfach aufgerufen werden mit:

<% include LocaleMenu %>

Das Menu zeigt die Sprachen und wechselt jeweils zur gewünschten Sprache.

<% if $Locales %>
<div class="left">Locale <span class="arrow">&rarr;</span>
<nav class="primary">
<ul>
<% loop $Locales %>
<li class="$LinkingMode">
<a href="$Link.ATT" <% if $LinkingMode != 'invalid' %>rel="alternate" hreflang="$HrefLang"<% end_if %>>$Title.XML</a>
</li>
<% end_loop %>
</ul>
</nav>
</div>
<% end_if %>

... oder kann durch eine eigenes LocalMenu überschrieben werden.