Die Multilanguage-Version 0.6 der PonyGallery ist fertig.
Sie liegt diesmal bereits als Installations-zip (PONYGALLERY_112_OS_ML_06.zip) im Anhang.
Neben kleinen Änderungen an bestehenden Variablen wurden zudem zwei unnötige Variablen entfernt und einige neue hinzugefügt. Auch am Layout habe ich wieder etwas verändert; so werden jetzt z.B. die Thumbnails beim Betrachten einer Kategorie zentriert auf der Seite dargestellt. Diese Änderungen sind aber eher als geringfügig zu betrachten, die hauptsächlichen Änderungen betreffen die Struktur und den Aufbau der Language-Dateien.
Bislang waren die Variablen relativ unsortiert aufgeführt. In den beiliegenden neuen Dateien sind die Variablen aufsteigend nach Datei-Aufruf geordnet.
Beispiel-Ausschnitt aus der germani.php:
PHP-Code:
273 // sub_commentpic.php
274 DEFINE("_PONYGALLERY_COMM_SAVED","Dein Kommentar wurde gespeichert."); //Zeile 51
275
276 // sub_deletecomment.php
277 DEFINE("_PONYGALLERY_COMM_DELETED","Der Kommentar wurde gelöscht."); //Zeile 48
278 #DEFINE("_PONYGALLERY_AUTHOR","Autor"); //Zeile 54
279 #DEFINE("_PONYGALLERY_COMMENT","Kommentare"); //Zeile 56
280 DEFINE("_PONYGALLERY_COMM_ADDED","Kommentar hinzugefügt am"); //Zeile 73; sub_viewdetails.php Zeile 325
282 DEFINE("_PONYGALLERY_DELETE_COMMENT","Kommentar löschen"); //Zeile 79
283 DEFINE("_PONYGALLERY_BACK","Zurück"); //Zeile 83; sub_editdetails.php Zeile 193
Die Variablen sind abschnittsweise, getrennt nach derjenigen Datei, von der sie aufgerufen werden, in chronologischer Form aufgeführt, beginnend mit den Variablen der admin.ponygallery.html.php, gefolgt von den Variablen der admin.ponygallery.php und danach die Variablen aus den anderen Dateien.
Dabei wird JEDER Aufruf einer Variable aufgeführt, d. h. auch wenn die Variable weiter oben in der germani.php bereits definiert wurde, so wird sie dennoch bei jedem weiteren Aufruf in die Liste aufgenommen, dann allerdings auskommentiert (siehe Beispiel Zeile 278, 279).
Dies hat mehrere Vorteile: man kann sofort erkennen, welche Variablen von welcher Datei aufgerufen werden und in welcher Zeile der Datei. Es ist damit auch relativ einfach möglich, Variablen gezielt nach Aufruf auszutauschen.
Nehmen wir z.B. die Variable DEFINE("_PONYGALLERY_CATEGORY","Kategorie");
Sie wird insgesamt acht mal von unterschiedlichen Dateien aufgerufen. Will man jetzt beispielsweise im Admin-Bereich weiterhin „Kategorie“ angezeigt bekommen, dafür aber im Frontend anstatt von „Kategorie“ lieber „Photoalben“, so kann man die zuständige Variable schnell auffinden und ändern. Dafür entfernt man die Kommentar-Raute(#), gibt ihr einen neuen Namen z.B. _PONYGALLERY_CATEGORY_FRONT und ändert anschließend noch den Eintrag in der entsprechenden Datei.
Wird eine Variable zum ersten mal aufgerufen, so ist sie natürlich nicht auskommentiert; hinter der Variable steht jeweils die Zeile bzw. die Zeilen in der sie in der aktuellen Datei aufgerufen wird und – sofern vorhanden – auch die Zeilennummern aus weiteren Dateien in denen sie außerdem noch verwendet wird (siehe Beispiel Zeile 280 / 283).
Natürlich bläht diese Anordnung die Language-Dateien ein wenig auf, das ist aber bei dieser verhältnismäßig kleinen Komponente zu verschmerzen, zumal wenn man die Vorteile entgegenhält.
Bis bald
mab
Lesezeichen