Mailinglisten-Archive |
Hi Lutz, Lutz Zetzsche schrieb: > nein, überhaupt nicht. Die Templates wissen gar nichts von den Sprachen. Sie > sehen genauso aus, als ob sie nur eine Sprache behandeln würden. Schon in der > Programmlogik werden die richtigen Texte mittels des übergebenen > Sprachparameters gezogen. vielen Dank für die ausführliche Beschreibung - habs kapiert :-) > Die erste Variante - also nicht der Weg über im Skript hartkodierte Texte mit > einer Übersetzungstabelle - ist programmiertechnisch und pflegemäßig deutlich > eleganter. Stell Dir mal vor, Du hast einen Text an vielen Stellen Deiner > Anwendung drin, à la $text_db = $oTabelleUebersetzung->holeUebersetzung('Ich > bin ein toller Text', $sprache);, und Du änderst mal diesen Text. Dann mußt > Du ihn überall und in der Datenbank ändern. Auch Sprachwechsel direkt auf > Seitenebene arbeiten deutlich besser, wenn man IDs verwendet! Ist klar - die abstrake Variante über IDs ist klasse... >>Ich ziehe momentan überhaupt keine Texte aus der Programmlogik in die >>Ausgabe. Hab wie gesagt alle Texte (/Ausgabe) in den Templates drin... > > > Das ist aus meiner Sicht ein Designfehler. :-) Da bin ich jetzt etwas anderer Meinung, vielleicht seh ichs aber im Laufe der Umsetzung ein :) Ich will die Programmlogik konkret von der Ausgabe-/Präsentationslogik trennen. Aus diesem Grunde werd ich zunächst das Übersetzungssystem direkt im Template integrieren... man kann ja durchaus auch Objekte als Smarty-Variable übergeben und aus Smarty darauf zugreifen... <h1>{$lang->get(1,$smarty.template)}</h1> Das machts m.E. einfacher, weil einige Teile des Templates includiert werden und die Übersetzung bzw. das Holen der Texte nur einmal definiert werden muss... Nochmal besten Dank und einen guten Rutsch! Andreas
php::bar PHP Wiki - Listenarchive