Effiziensteste Template-Technik für meine Seite

Eistee

Erfahrenes Mitglied
Gleich vorweg, ich habe dich Suchfunktion genutzt. ;)
Ich möchte auch nicht wissen, wie ich Templates in PHP nutze, sondern ich möchte eur meinung wissen, welche "Template-Technik" ihr für meine Seite am sinnvollsten haltet.

Ich habe auf meiner seite viele Inhalte, die alle in das selbe Design eingebunden werden sollen. Das funktioniert z.Z. darüber, dass ich in der URL die Varibale $open mit einem variierenden Wert übergebe. Für das Gästebuch z.B. ?open=gb
Sollte soweit jeden klar sein.
Über eine switch/case-Abfrage in der Hauptseite (index.php), in welche alle Inhalte eingebunden werden sollen, prüfe ich nun welchen Inhalt $open hat und binde den zugehörigen Inhalt über include() ein.

Nun möchte ich wissen, ob es nicht noch andere, effizientere(sicherere/einfachere) Methoden gibt, mit Templates zu arbeiten, die meine derzeitig genutze Technik ablösen könnten. Was bietet PHP mir in diesem Zusammenhang für Funktionen?

Ich hoffe, ihr könnt mir ein paar sinnvolle Infos geben.
 
Ich würde sagen die normalste Template-Technik. Wi das eben immer funktioniert. Hast ja immer einen String, der mit dem Inhalt einer anderen Seite ersetzt wird.

Also ich kenn das nur so, dass du dann einfach eine Seite für dein Gästebuch oder dein Forum machst und dann einfach den String damit ersetzt. Das beherrscht eigentlich jede Template-Klasse.

Hoffe ich habe Dich richtig verstanden.

KoMtuR
 
Naja Templates werden ja u.a. deswegen benutzt um die PHP Logik von dem HTML-Output zu trennen. Da dies aber nicht immer ganz möglich ist, bieten Template-Engines, wie z.B. Smarty viele weitere Funktionen an, die sich zudem problemlos selbst erweitern lassen.
Zumal HTML im PHP-Code, gerade bei aufwändigeren Seiten zum k**** aussieht.

Ich verwende fast ausschliesslich Smarty und mache es da in der Regel so eben über einen Parameter den gewünschten Content-Parameter per IF / Case das entsprechende Contenttemplate wähle, dynamsichen Inhalt zuweise und dann in das Maintemplate einbinde...zum Beispiel Tabellarische seite mit Headline, Links menü, rechts Content.

Nur wie ich dich verstanden habe, siehst du deinen Includeten PHP-Sites als Templates an?

Die Templateengines arbeiten mehr oder minder auf dem Prinzip, welches KomtUr bereits erwähnt hat.
 
Könnt ihr mich evtl. mal ein wenig über smarty aufklären?
Ich habe mir mal den Crash-Course auf der Seite angeschaut. Das Prinzip gefällt mir - teilweise nutze ich diese Template-Form auch schon auf meiner Seite.
Was mich nun aber interessieren würde:
Ist es möglich, meine Seite auf smarty umzustricken?
Ich frage dies, da ich in den einzelnen Berreichen meiner Seite, wieder Unterbereiche habe.
In der gallery wählt man so z.B. zunächst das Datum aus, dann werden alle Bilder dieses Datums angezeigt, dann nur das, welches man betrachten möchte. Ist etwas in dieser Form auch ohne weiteres mit smarty zu handhaben? Wenn ja, wie?
Was BenBen da erklärt, entspricht schon in etwa dem jetzigen Prinzip meiner Seite.
Ich würde euch bitten, euch mal ein Bild von meiner Seite zu machen und mir zu erklären, wie etwas deratiges mit smarty aussehen könnte. Wie es bisher funktioniert habe ich ja in meinem ersten Post erklärt. Ausserdem ist es anhand der an die URL angehängten Variablen auch leicht nachzuvollziehen.

http://www.alkbrueder.de
 
Es verschiedene Ansätze sowas umzusetzen.
Meine Seiten baue ich meistens so auf das mich 2 oder evtl auch 3 Template objekte habe. 1, das Mastertemplate mit Headline und Menü (wenn ohne Menü, dann eben 3 Tpl Objekte), und das 2. für den jeweiligen Content.
Je nach Parameter, teile ich meinem einen templateObjekt was es machen soll, den Inhalt dessen weise ich dann dem Main-Template zu.
Hier wäre es sinnvoll, keinen PHP-Code in den Templates zu haben (auch wenn das problemlos mit Smarty möglich ist).

Da du noch kein Templatesyetem bentutzt, gehe ich von aus das dein Code mit HTML verwurstelt ist. Ergo würde es sinn machen, eben dem Hauptziel eines Templatesyetems folge zu leisten und den HTML-Kram (-> Template) vom Code zu trennen.
Kann aber durchaus viel Aufwand werden. Wenn du dann aber später das Layout ändern musst, findest du dich dann in einem übersichtlicheren HTML-Code besser zurecht...
 
Eine Einführung zu Smarty findest du übringes auch auf:
tut.php-q.net
Wenn man sich danach mal die Smarty Referenz (zu finden auf http://smarty.php.net ) anguckt ,kommt man schnell und einfach mit
Smarty klar.

Meine Frage ist aber, da ich keine IF Schleifen etc. brauche, ob es sein sehr einfaches Template System gibt , um damit nur den Platzhalter mit Content zu füllen .
ODer ist davon abzuraten?
Mein Hauptgrund dafür wäre die Perfomance zu verbessern(da es ja wohl ,wesentlich,schneller sein muss,wenn Smarty nicht nach PHP Code scannen muss etc.)
 
Zurück