Eigene Language Datei (*.lang) erstellen und einbinden

Bei Problemen/Anregungen mehrsprachiger Webseiten.

Eigene Language Datei (*.lang) erstellen und einbinden

Beitragvon wmxrecords » 11. Nov 2009, 17:25

Hallo zusammen! :)

Ich habe eine Website mit 5 Sprachen. Die Inhalte werden mit Redaxo redaktiert. Nun gibt es aber im Header- oder Footer-Bereich statische Dinge. Momentan habe ich vor bei jedem Seitenload zu prüfen welche Sprache gerade aktiv geschaltet ist um dann den statischen Inhalt in entsprechender Sprache darzustellen. Das hat den Nachteil, dass ich viele Weichen setzen muss und meine Template Datei groß und unübersichtlich wird.

Redaxo benutzt ja sog. LANG-Dateien. So eine Idee habe ich auch gehabt. Kann mir jemand kurz sagen wie man eine LANG-Datei in das Template einbinden kann? Die Dateien selbst kann ich ja mit nem Editor erstellen.
wmxrecords
 
Beiträge: 93
Registriert: 1. Nov 2008, 13:09

Beitragvon Gregor.Harlan » 11. Nov 2009, 18:26

Hallo,

die meisten hier verwenden für mehrsprachige Seiten dieses Addon um solche statischen Texte mehrsprachig zu realisieren.

Gruß, Gregor
Benutzeravatar
Gregor.Harlan
Entwickler
 
Beiträge: 825
Registriert: 4. Jun 2007, 09:35
Wohnort: Dresden

Beitragvon wmxrecords » 11. Nov 2009, 19:46

Danke sehr! Ich werde ihn ausprobieren! :)
wmxrecords
 
Beiträge: 93
Registriert: 1. Nov 2008, 13:09

Beitragvon wmxrecords » 12. Nov 2009, 11:22

Aber es wird nur in Inhaltstexten ersetzt oder? Weil ich muss eigentlich Wörter ersetzen die nicht im Content stehen... Also statische Einträge im Template.
wmxrecords
 
Beiträge: 93
Registriert: 1. Nov 2008, 13:09

Beitragvon Gregor.Harlan » 12. Nov 2009, 12:22

Die Platzhalter werden im gesamten Quelltext, der im Browser ankommt, ersetzt.
Schreibst du im Template z.B.
Code: Alles auswählen
echo '###PLATZHALTER###';
und definierst einen entsprechenden Platzhalter, dann wird er auch ersetzt.

Gruß, Gregor
Benutzeravatar
Gregor.Harlan
Entwickler
 
Beiträge: 825
Registriert: 4. Jun 2007, 09:35
Wohnort: Dresden

Beitragvon wmxrecords » 12. Nov 2009, 16:32

Das AddOn tut nicht, er bringt "Fehler beim Speichern" wenn ich einen Wert hinzufügen will.

Ich habs jetzt so gelöst:

- bevor das Tempate lädt frage ich die aktive Sprache ab
- je nach Sprache lade ich das entsprechende Sprachpaket (in diesem Fall eine PHP mit einem Array und Wertzuweisungen):

Code: Alles auswählen
if (aktive Sprache == deutsch) include ("lang/german.php");


- german.php sieht ungefähr so aus:

Code: Alles auswählen
<?php
//language pack for german
$lang['language'] = 'Sprache';
$lang['search'] = 'Suchbegriff eingeben';
$lang['navlegend'] = 'Sie sind hier:';
$lang['newsletterheadline'] = 'Newsletter';
$lang['newslettertext'] = 'Eintragen und immer aktuellste News empfangen.';
$lang['newslettername'] = 'Name';
$lang['newsletterbutton'] = 'eintragen';
$lang['socialnetworksheadline'] = 'Soziale Netzwerke';
$lang['followontwitter'] = 'Folgen Sie uns bei Twitter';
?>


- dann rufe ich im Template den entsprechenden Wert aus dem Array $lang auf:

Code: Alles auswählen
<?php print $lang['search']; ?>


Ist vielleicht keine gesondert professionelle Lösung, aber funktioniert wunderbar! :)
wmxrecords
 
Beiträge: 93
Registriert: 1. Nov 2008, 13:09


Zurück zu Mehrsprachigkeit [R4]

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast