CMS, Smarty & Co.



  • Hi

    Bis jetzt habe ich, wenn ich eine Änderung am Design meine Webseite vorgenommen habe, immer alle Seiten einzeln ändern müssen.

    Ich würde aber gerne Design und Inhalt voneinander trennen, und zwar so, dass ich nur noch eine Designseite habe, und wenn ich in dieser eine Änderung vornehme, dies für alle Seiten gilt.

    Ich habe von Smarty, das das können soll, gehört. Wäre Smarty das wonach ich suche?
    Und funktioniert ein CMS genau so, ausser dass direkt vom CMS Änderungen an Design und Inhalt vorgenommen werden können, ohne einen Editor zu verwenden?

    Was gibt es sonst noch für Möglichkeiten, Design vom Inhalt so zu trennen, dass ich auch nur noch eine Designvorlage zu ändern habe?

    MFG,
    der/die/das Golm 😉



  • Du kannst dir doch direkt entweder per HTML ein Template basteln (google nach templates, wie das genau funktioniert) oder per PHP die Lösung mit Header und Footer realisieren.

    Du teilst die Seite in 2 hälften:

    1. Teil:
    <html> bis anfang des textes der hauptseite

    2. Teil:
    Ende des Textes der Hauptseite - </html>

    Diese fügst du in header.php und footer.php und in den anderen dateien machst du einfach nur am anfang der seite ein <?php include("header.php"); ?> und am ende dementsprechend ein <?php include("footer.php"); ?>

    Und schon hast du das erledigt...

    Liebe grüsse



  • Obwohl man mrchats Variante nur benutzen sollte, wenn die Seite sowieso PHP benutzt (oder es einfach egal ist, weil sowieso nur sehr wenige Leute die Seite besuchen).

    Andere Alternativen sind offline Template Programme. Der Nachteil ist allerdings, dass du hier bei einer Designänderung immer alle Seiten neu uploaden musst. Also nur bei kleinen Homepages zu empfehlen.

    Das beste wäre ein Online Template System, welches allerdings aus den Templates und dem Inhalt statische Seiten produziert (wenn du sonst kein PHP benutzt).



  • Wenn du eine Skript Sprache wie PHP oder PERL benutzen kannst, dann würde ich dir Templates empfehlen, das ist echt super!

    ich hab früher alles in einem Skript gemacht (PHP) und wenn ich etwas updaten wollte, habe ich meistens das Skript neu schreiben müssen, weil ich nicht mehr verstand, was ich denn da geschrieben hatte.

    Das kotzte mich an und hab meine eigene Template Klasse gemacht und somit habe ich endgültig PHP vom HTML Code getrennt, die php Dateien waren viel übersichtlicher und kleiner und Updates sind so einfach wie nie!

    Du kannst entweder deine eigene Template Klasse basteln oder aus dem Netz runterladen.



  • Die Lösung mit header und footer finde doch gar keine Vorteile 😕 . So muss ich, wenn ich eine Designänderung vornehme, immer noch alle Seiten einzeln ändern.

    Sind Smarty und FastTemplate online Template Systeme?
    Und wo liegen die Unterschiede zwischen den beiden?

    Loggy, wäre Dreamweaver u.a. ein offline Template Programm?

    Danke 🙂



  • supertux schrieb:

    Du kannst entweder deine eigene Template Klasse basteln oder aus dem Netz runterladen.

    Darf ich mir deine mal ansehen, oder kannst du mir das deiner Meinung nach beste nennen?



  • Golm schrieb:

    Die Lösung mit header und footer finde doch gar keine Vorteile 😕 . So muss ich, wenn ich eine Designänderung vornehme, immer noch alle Seiten einzeln ändern.

    Nein, du musst nur deine "header.php" und "footer.php" anpassen. mehr nicht 😉

    der text und der inhalt der "textebene" steht ja in der datei, der ändert sich ja beim design nicht. ansonsten ist ja alles gleich.

    Liebe grüsse



  • Achso.
    Aber da bei mir die Titel Tags im header wechseln, funktioniert das so leider nicht.

    Kann mir noch jemand auf meine Fragen in meinen Beträgen weiter oben antworten? 🙂



  • sicherlich funktioniert das.. du gibst einfach den titel mit als variable über (header.php?title=deintitel) und lässt den dann anzeigen (per php in der header.php an der richtigen stelle...)

    Liebe grüsse



  • Läßt sich Design und Code wirklich trennen? Ich würde sagen: NEIN
    Ist etwas im Angesehen von verschiedenem Inhalt (Text) verwendet man PHP ja um Dynamisches HTML zu erzeugen. Somit steht der eigentliche HTML-Code (wird eben dan nur in die HTML-Ausgabe eingefügt) in der PHP-Datei.

    Das nenne ich nicht wirklich Trennung.
    Ich verwende ITX als Template-System.

    Dachte dabei das ich die HTML-Seiten in Dremaweaver und die PHP mit Zend Studio bearbeite.
    Hab ich aber schon eine Frameseite meckert DW bereits das er die Datei nicht finden kann. (Wie auch wenn sie in einem anderen Ordner sind)
    Zusätzlich werden Steuerelemente dynamisch eingefügt, deren Code wieder aus den php-Dateien kommen. Bin nicht so der WEBProgrammierer. Vielleicht habe ich was übersehen.



  • Golm schrieb:

    supertux schrieb:

    Du kannst entweder deine eigene Template Klasse basteln oder aus dem Netz runterladen.

    Darf ich mir deine mal ansehen, oder kannst du mir das deiner Meinung nach beste nennen?

    Klar kann ich, aber ich kann es nicht, ich muss in 5 Min. weggehen, wenn ich zurückkomme 🙂



  • Unix-Tom schrieb:

    Läßt sich Design und Code wirklich trennen? Ich würde sagen: NEIN
    Ist etwas im Angesehen von verschiedenem Inhalt (Text) verwendet man PHP ja um Dynamisches HTML zu erzeugen. Somit steht der eigentliche HTML-Code (wird eben dan nur in die HTML-Ausgabe eingefügt) in der PHP-Datei.

    Das kommt darauf an, was du unter Trennung verstehst. Natürlich muss eine Kommunikation zwischen Programmierer und Designer bestehen. Aber mit Systemen wie Smarty brauch der Designer keine Ahnung von PHP und der Programmierer keine Ahnung von HTML zu haben.

    Der Sinn eines Templatesystems besteht darin mit möglichst nur einem einzigen Handgriff globale Veränderungen vorzunehmen. Oder auch zwischen verschiedenen Designs wechseln zu können ohne auch nur eine einzige Zeile Quellcode zu verändern oder hinzuzufügen.

    Wobei gesagt werden muss, das Smarty nicht gerade sehr clever mit dem Speicher umgeht. Was da während der Ausführung alles an unnötigen Daten geladen wird...



  • http://typo3.com 😃
    Klare Unterteilung vom Design und Inhalt, benutzte es in meiner Firma um die Intranetseite zu pflegen und um alle anderen sachen damit zu machen.



  • Hallöchen

    Ich hatte dasselbe vor und hab mir folgende Gedanken dazu gemacht:
    Ich habe eine oder mehrere cgi's (in diesem fall wahrscheinlich php), je nachdem wieviele unterschiedliche Designs. Und die Texte stehen dann in einzelnen Dateien, die dann vom cgi ausgelesen und weitergereicht (eher direkt weitergereicht) werden.
    Die cgi's beinhalten den <head>-bereich , eine Tabelle mit z.B Links auf andere Seiten. Und eine Zelle in der Tabelle wird mit dem Inhalt aus der Datei gefüllt. So kann ich das design jederzeit in einer Zentralen Datei ändern...

    grüße
    r++



  • Hab mir mal Smarty angesehen. Hier ist eine Trennung von PHP und HTML fast zu 100% möglich.
    Bin gerade umgestiegen.


Log in to reply