Benutzer-Werkzeuge

Webseiten-Werkzeuge


dev:284:translate

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
dev:284:translate [19.07.2018 11:17] – [Aufbau der Sprachdateien (EN.php)] Manuela v.d.Deckendev:284:translate [19.07.2018 11:17] – [Allgemeiner Aufbau der Übersetzungs-Struktur] Manuela v.d.Decken
Zeile 5: Zeile 5:
  
 Der Einfachheit halber rede ich hier immer nur von 'Sprachdateien'. Real müssen die Übersetzungen jedoch längst nicht mehr zwingend in PHP-Dateien als Arrays definiert werden. Es ist jetzt jedes denkbare, geeignete Dateiformat möglich. Die Daten müssen nicht einmal auf dem selben Server liegen. Auch könnten die Daten durch einen WebService zur Verfügung gestellt oder in einer Datenbank abgelegt werden. Dazu ist einzig und allein jeweils ein kleiner, spezialisierter Treiber nötig, der jederzeit, auch temporär sogar für ein einzelnes Addon oder Template, eingebunden werden kann. Der Einfachheit halber rede ich hier immer nur von 'Sprachdateien'. Real müssen die Übersetzungen jedoch längst nicht mehr zwingend in PHP-Dateien als Arrays definiert werden. Es ist jetzt jedes denkbare, geeignete Dateiformat möglich. Die Daten müssen nicht einmal auf dem selben Server liegen. Auch könnten die Daten durch einen WebService zur Verfügung gestellt oder in einer Datenbank abgelegt werden. Dazu ist einzig und allein jeweils ein kleiner, spezialisierter Treiber nötig, der jederzeit, auch temporär sogar für ein einzelnes Addon oder Template, eingebunden werden kann.
 +=== Aufbau der Sprachdateien (EN.php) ===
 +Dies ist die bevorzugte und auch dringend empfohlene Art:\\
 +//(übersichtlich und schon im Texteditor einfach zu sortieren)//
 +<PHP>
 +//Modul Description
 +$module_description = 'Enter here a really short description of your module. About 200-250 characters should suffice.';
 +
 +$MOD_MyModule['PRINT'                      = 'Please print this page, if a copy is desired for your records.';
 +$MOD_MyModule['LOAD_LAYOUT'                = 'Load Default Layout';
 +$MOD_MyModule['TEXT_GUEST'                 = 'Guest';
 +$MOD_MyModule['TEXT_UNKNOWN'               = 'unknown';
 +$MOD_MyModule['MESSAGE_ARCHIVE_DELETED'    = 'Zip(s) deleted successfully.';
 +$MOD_MyModule['MESSAGE_ARCHIVE_NOT_DELETED'] = 'Cannot delete the selected Zip(s).';
 +</PHP>
 +manche schreiben die Einträge auch auf diese Art:\\
 +//(deutlich schwieriger zu lesen und nicht exakt sortierbar)//
 +<PHP>
 +$MOD_MyModule['PRINT'                      = 'Please print this page, if a copy is desired for your records.';
 +$MOD_MyModule['LOAD_LAYOUT'                = 'Load Default Layout';
 +$MOD_MyModule_TEXT['GUEST'                 = 'Guest';
 +$MOD_MyModule_TEXT['UNKNOWN'               = 'unknown';
 +$MOD_MyModule_MESSAGE['ARCHIVE_DELETED'    = 'Zip(s) deleted successfully.';
 +$MOD_MyModule_MESSAGE['ARCHIVE_NOT_DELETED'] = 'Cannot delete the selected Zip(s).';
 +</PHP>
 +Das sieht nicht soo gut aus, aber es funktioniert. Beide Schreibweisen erzeugen jedenfalls die selben Translate-Schlüsselwörter.
 +<PHP>
 +echo $oTrans->MOD_MyModule_PRINT;
 +echo $oTrans->MOD_MyModule_LOAD_LAYOUT;
 +echo $oTrans->MOD_MyModule_TEXT_GUEST;
 +echo $oTrans->MOD_MyModule_TEXT_UNKNOWN;
 +echo $oTrans->MOD_MyModule_MESSAGE_ARCHIVE_DELETED;
 +echo $oTrans->MOD_MyModule_MESSAGE_ARCHIVE_NOT_DELETED;
 +</PHP>
 +Zwingend ist derzeit jedoch noch der Präfix "$MOD_MyModule_" bzw."$MOD_MyModule[".
 +Nur so lassen sich ungewollte Überschneidungen der Schlüsselwörter verhindern.
  
 ===== Historisches ===== ===== Historisches =====
dev/284/translate.txt · Zuletzt geändert: 31.08.2023 08:22 von Manuela v.d.Decken