Ankündigung

Einklappen
Keine Ankündigung bisher.

Mehrsprachigkeit richtig einsetzen, verstehen und lieben lernen. :)

Einklappen
Dieses Thema ist geschlossen.
X
Das ist ein wichtiges Thema.
X
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Mehrsprachigkeit richtig einsetzen, verstehen und lieben lernen. :)

    Hi Leute,
    CC greift das Thema Mehrsprachigkeit etwas anders auf als Contao. Wie wir alle wissen managed Contao die Sprachen je Seitenzweig und sozusagen je Artikel / Element / Modul je Zweig. Generell keine schlechte, aber eine sehr mühsame Methode, besonders bei Modulen wie den News oder reinen Listen. CC ist ein listenähnliches Modul.

    Wie macht CC das genau?

    - Erstmal wähle man in der Konfiguration welche Sprachen generell bereitgestellt werden sollen. Einfach alle Sprachen, die CC unterstützen soll.

    Hinweis: Sollen die Basis-Einträge auch gleich die Muttersprache darstellen (z.B. Deutsch) wähle man in den Systemeinstellungen > CustomCatalog Einstellungen > Die Basis-Spracheinträge Fallbacks. Das Hinzufügen von Deutsch als autarke Sprache ist in diesem Fall nicht nötig.

    - Ab jetzt gibt es über der Liste mit Euren Einträgen einen Sprachenwechsler (strenggenommen ein Backend-Filter). Über diesen kann man die angelegten Einträge je Sprache anzeigen lassen.

    Hier der Knackpunkt!
    CC managed Sprachen innerhalb des Eintrags. Anders gesagt jeder Eintrag hat Sprachen-Geschwister (in der Datenbank völlig autark, CC unterscheidet für einen)

    - Mit dem Sprachenwechsler im Eintrag (Editiermodus) wähle man zwischen den Sprachen-Geschwistern. Falls für die jeweilige Sprache noch keiner existiert, wird eine neue Kopie des aktuellen Eintrags angelegt.

    Ohne eine Sprachauswahl hat man die Möglichkeit "Basis-"-Eintrage anzulegen (würde ich empfehlen) z.B. für zukünftige Übersetzungen oder wenn ein Übersetzer direkt Zugang zum CC haben soll. Damit dieser nicht wild neue Einträge anlegt, sondern sich auf seine Übersetzungen konzentrieren kann, kann man einen Basis-Eintrag anlegen.

    --
    Neues Feature ab 1.1.6 (danke an D23):
    CC unterstützt gleiche Alias innerhalb von Sprachengeschistern.
    Beispiel:
    /en/product-A.html
    /de/product-A.html

    Existiert bereits ein Alias für einen Eintrag für die gewählte Sprache, wird ein entsprechender Hinweis ausgegeben. "Alias für Sprache XYZ existiert bereits."

    ---
    Frontend:

    Die CC-Liste ist hier sehr smart. Man kann direkt die aktive Sprache vorfiltern lassen. Dann schaut CC nach der Sprachvariablen des aktiven Zweigs. Fertig aus.

    Alternative ist ein manueller Sprachenfilter. Damit kann die Liste manuell umgestellt werden (sehr komfortabel z.B. bei mehrsprachigen Glossars, wo man nicht je Sprache einen Seitenzweig bauen will)

    Der Leser funktioniert ebenfalls mit dem Sprachenfilter. Auf den Detailseiten kann direkt (wie im Backend) zwischen den Sprachgeschwistern umgeschaltet werden. Dafür einen manuellen Sprachenfilter auf der Detailseite platzieren

    Gut zu wissen:

    Der Leser, als auch die Liste reagieren auch auf GET Parameter: xyz.html?language=en
    Zuletzt geändert von Tim; 17.05.2017, 08:26.
    http://www.premium-contao-themes.com

  • #2
    Machen wir hier noch weiter.

    Einfache Select-Felder:

    Mehrsprachigkeit im Label kann über die langconfig.php definiert werden je Wert. Die langconfig.php wie gewohnt aufbauen über die Globale TL_LANGUAGE

    PHP-Code:
    if($GLOBALS['TL_LANGUAGE'] == 'en')
    {
    $GLOBALS['TL_LANG']['cc_myTable']['mySelectAlias']['myValue'] = 'My Label';


    Datenbank-Select-Felder

    Hier kommt das Übersetzungswidget / Übersettungswidget-Attribut zum Einsatz, was in den Attribute-Einstellungen des Datenbank-Select-Feldes als Übersetzungsquelle ausgewählt werden kann.
    Klicke auf die Grafik für eine vergrößerte Ansicht

Name: screenshot_774.jpg
Ansichten: 2
Größe: 115,1 KB
ID: 87
    Angehängte Dateien
    Zuletzt geändert von Tim; 12.08.2015, 09:20.
    http://www.premium-contao-themes.com

    Kommentar


    • #3
      Backend Labels in CustomElements:

      PHP-Code:
      $GLOBALS['TL_LANG']['myCustomElementAlias']['myFieldAlias'][0] = 'My Label';
      $GLOBALS['TL_LANG']['myCustomElementAlias']['myFieldAlias'][1] = 'My Description'
      http://www.premium-contao-themes.com

      Kommentar


      • #4
        >= CustomElements 1.4.4:

        (z.B. langconfig.php)

        PHP-Code:
        // Felder
        $GLOBALS['TL_LANG']['CUSTOMELEMENTS']['myCustomElementAlias']['fields']['myFieldAlias'][0] = 'My Label';
        $GLOBALS['TL_LANG']['CUSTOMELEMENTS']['myCustomElementAlias']['fields']['myFieldAlias'][1] = 'My Description';

        // Wiederkehrende Felder: In jedem CE
        $GLOBALS['TL_LANG']['CUSTOMELEMENTS']['*']['fields']['myFieldAlias'][1] = 'My Label'
        $GLOBALS['TL_LANG']['CUSTOMELEMENTS']['*']['fields']['myFieldAlias'][1] = 'My Description';

        // Gruppen-Titel
        $GLOBALS['TL_LANG']['CUSTOMELEMENTS']['myCustomElementAlias']['palettes']['myGroupAlias'] = 'My Group Label';

        // Wiederkehrende Gruppen-Titel: In jedem CE
        $GLOBALS['TL_LANG']['CUSTOMELEMENTS']['*']['palettes']['myGroupAlias'] = 'My Group Label'
        >= CustomCatalog 1.2.6:

        PHP-Code:
        // Felder
        $GLOBALS['TL_LANG']['CUSTOMCATALOG']['myTable']['fields']['myFieldAlias'][0] = 'My Label';
        $GLOBALS['TL_LANG']['CUSTOMCATALOG']['myTable']['fields']['myFieldAlias'][1] = 'My Description'

        // Wiederkehrende Felder: In jedem CE
        $GLOBALS['TL_LANG']['CUSTOMCATALOG']['*']['fields']['myFieldAlias'][1] = 'My Label'
        $GLOBALS['TL_LANG']['CUSTOMCATALOG']['*']['fields']['myFieldAlias'][1] = 'My Description'

        // Gruppen-Titel bzw. Paletten-Titel
        $GLOBALS['TL_LANG']['CUSTOMCATALOG']['myTable']['palettes']['myGroupAlias'] = 'My Group Label';

        // Wiederkehrende Paletten-Title/Gruppen-Titel: In jedem CC
        $GLOBALS['TL_LANG']['CUSTOMCATALOG']['*']['palettes']['myGroupAlias'] = 'My Group Label'
        http://www.premium-contao-themes.com

        Kommentar


        • #5
          Filter-Beschriftungen: http://forum.premium-contao-themes.c...en-%C3%A4ndern
          http://www.premium-contao-themes.com

          Kommentar

          Lädt...
          X