mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 25.04.2024 08:38 Benutzername: Passwort: Auto-Login

Thema: Templatemaschine und CMS mit php5 vom 26.12.2004


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Projekte -> Templatemaschine und CMS mit php5
Autor Nachricht
Account gelöscht
Threadersteller


Ort: -
Alter: -
Verfasst So 26.12.2004 02:38
Titel

Templatemaschine und CMS mit php5

Antworten mit Zitat Zum Seitenanfang

Hallöchen. Ich habe noch einmal begonnen, mein CMS in Ermangelung von Alternativen komplett neu aufzusetzten. Wichig war mir eine einfache, doch flexible Templatemaschine. Herausgekommen ist diesmal ein XML unabhängiges system, welches ich persönlich schon für recht klein und leicht und doch leistungsfähig halte.

Neuer Codeschnipsel:

Code:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
     "http://www.w3.org/TR/html4/transitional.dtd">
<html>
  <head><title>lalilu</title>
   <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  <body>
   
   <h4>Ganz hart:</h4>BUHUHUHUHUHU!!!
   
   <#set $var1[zwei]="AAARGH"#>
   <#set $var5.eins.zwei="URHG"#>
   
   <#set $var6="eins"#>
   <#set $var3[drei]="zwei"#>
   
   <#set $var4="drei"#>
   <p>{$var3[$var4]}</p>
   
   <p>{$var1[$var2][$var3[$var4]]}</p>
   
   
   {$var1[$var3[$var4]]}
   {$var5[$var6][$var3[$var4]]}
   <#if $var5[$var6][$var3[$var4]]=="URHG"
        <p style="color:red;">&#x0024;var5[&#x0024;var6][&#x0024;var3[&#x0024;var4]] ist URGH</p>
   #>
   <#elsif $var1[$var3[$var4]]=="AAARGH"
        <p style="color:blue;">&#x0024;var1[&#x0024;var3[&#x0024;var4]]=AAARGH</p>
   #>
   <#else
        <p style="color:orange;">Beide Bedinungen sind falsch.</p>
   #>
   
   <h1>{$var5.$var6.$var3[$var4]}</h1>
   </body>
</html>


Nun kommts: Es ist so derbe viel Arbeit, so etwas alleine auf die Beine zu stellen. Gerade die Architektur/Verbindung mit Frontend/Backend-Funktionalitäten u.s.w.. Vielleicht kann der eine oder andere ja mal nen Blick riskieren, und vielleicht sogar Eigenes reinbringen.

Ich werde das hier auf alle Fälle aktuell halten, vielleicht kommt ja auch für den einen oder anderen bereits was bei rum. naja... und ein wenig stolz bin ich auch darauf, daher wollte ichs einfach mal zeigen und mich eurer vernichtenden kritik aussetzen.

UNd bitte keine "Näh, nicht schon wieder templates, schinken!"-Kommentare Grins



LETZTES UPDATE:
Arraysyntax nun auch in Punktseparierten Variablen möglich:
{$var5.$var6.$var3[$var4]} <=> {$var5[$var6][$var3[$var4]]}



UPDATES:
Bedingungen sind nun an erweitertes Variablenhandling angepasst!

Eine Menge Bugfixes im Variablenhandling. Sollte jetzt auch bei tiefen Schachtelungen laufen (Siehe Listing)

"variable" Variablen sind nun auch möglich. Außerdem wird der
Variablentyp automatisch ermittelt, Anfüs in Arraynamen sind nicht
mehr nötig.
// (war alles gelogen=>zu viele Fehler)

Punksyntax tuts jetzt auch * Ich bin ja schon still... *


DOWNLOAD

INSTALLATION:
Alles in ein Verzeichnis knallen, index.php starten. Funktionsreferenz folgt.

Wen das hier nicht so zusagt, für den habe ich einen Link: http://www.sitepoint.com/forums/showthread.php?threadid=123769 Grins


Zuletzt bearbeitet von am Sa 01.01.2005 14:11, insgesamt 14-mal bearbeitet
 
dastef

Dabei seit: 03.11.2003
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst So 26.12.2004 11:32
Titel

Antworten mit Zitat Zum Seitenanfang

moin Lächel

also ich bin da vllt nen bissel smarty-geschädigt .. aber 2 sachen
hätt ich:

a) bei den if-abfragen .. würd ich irgendwie den php-syntax bei-
behalten, dass if( ... ) { ... } bleibt .. weil die "klammer"
fehlt bei dir ja irgendwie .. und das is ja relativ oft auch bei php
so, dass ich da das klämmersche vergess .. - oder geht das nur
mir so? Ooops

b) Variablen würd ich mit $ schreiben - aus dem einfachen grund,
dass ich in if-abfragen (zB) nen direkten vergleich schreiben kann
<#if $heinz == "Schenk" ...

aber das sind ja nur meine Anregungen .. * Ööhm... ja? * die muss man
ja nicht berücksichtigen *zwinker*
  View user's profile Private Nachricht senden
Anzeige
Anzeige
Account gelöscht
Threadersteller


Ort: -
Alter: -
Verfasst So 26.12.2004 13:10
Titel

Antworten mit Zitat Zum Seitenanfang

Sodele: Du hast recht, eine Vereinfachung ists jedenfalls: So kann man die Akkoladen nun weglassen. Nun ist das natürich in Fließtexten ein Problem:

"Blahblahblahblah$VariableBlahblahblah."

Ich will PHP ja nicht neu erfinden, die Logik soll ja weitestgehend aus den Templates rausbleiben, sodass man höchstens KLeinigkeiten darüber einregelt (Bspw alternierende Tabellenhintergründe bei Datenbankabfragen oder so.) Deshalb will ich auch keine Verknüpfungsoperatoren o.Ä. dort hineinbringen. Auch verschachtelte IFs oder Schleifen sollte man sich sparen, da das ja eher für unbedarfte ich sag mal "wenn ... dann"-Programmierer/Designer gedacht ist. (Verschachtelungen SIND aber möglich! Wäre ja witzlos ohne...) Daher lasse ich die Akkoladen als Alternative drin: Somit kann man im Fließtext ganz einfach schreiben:

"Blahblahblahblah{$Variable}Blahblahblah."

...und benötigt keine Konstruktion wie $text="Blahhhblahh".$variable."blahblah";. Sowas kann ja php bereits, was soll ich da nochmal das gleiche reinbringen. Somit entfällt leider auch die gewünschte Schreibweise bei If-Abfragen. Praktischer für den Entwickler ists vielleeicht auf den ersten Blick, aber der Desiger wünscht sich – denke ich – nur gaaanz einfache Sachen wie Wenn... wennnicht... goto wieder_nach_oben (*zwinker* oder so...)

Oder wie siehst du das?
(Danke fürs Feedback an der Stelle auch)


Zuletzt bearbeitet von am So 26.12.2004 13:11, insgesamt 1-mal bearbeitet
 
dastef

Dabei seit: 03.11.2003
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst So 26.12.2004 13:22
Titel

Antworten mit Zitat Zum Seitenanfang

so war's auch nicht gemeint *zwinker* Die Delimiter sind ohne Frage gut,
ich meinte das nur innerhalb der if-Abfragen (zb) ! Weil da hast
du ja eigentlich aussen rum schon "Tags" .. *zwinker*

Fürn Fliesstext würd ich die sicher lassen, sonst kannste die
Templates auch gleich weg lassen *ha ha*
  View user's profile Private Nachricht senden
Account gelöscht
Threadersteller


Ort: -
Alter: -
Verfasst So 26.12.2004 13:29
Titel

Antworten mit Zitat Zum Seitenanfang

Jau, dann hab ich das falsch verstanden. Aber so ists zweifelsohne besser, das stimmt jedenfalls. Ich bin mir aber eh nciht sicher, ob ich das ganze vielleicht eher noch an javascript oder so anlehne. Dann könnte man vielleicht noch mit so Konstrukten wie news.entry[1].date rumhantieren.. obwohl das ja wiederum auch komplizierter ist... ich weiß es nicht...
 
dastef

Dabei seit: 03.11.2003
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst So 26.12.2004 13:57
Titel

Antworten mit Zitat Zum Seitenanfang

wenn's dir langweilig ist, bauste beides ein .. *hehe* smarty (ja ja ..
ich weis!) kann auch mehrere sachen verarbeiten .. und grad leute
die das ein oder andere system nicht so häufig gebrauchen sind
froh, wenn se noch andere schreibweisen haben die se benutzen
können!
  View user's profile Private Nachricht senden
Account gelöscht
Threadersteller


Ort: -
Alter: -
Verfasst Sa 01.01.2005 14:06
Titel

Antworten mit Zitat Zum Seitenanfang

LETZTES UPDATE:
Arraysyntax nun auch in Punktseparierten Variablen möglich:
{$var5.$var6.$var3[$var4]} <=> {$var5[$var6][$var3[$var4]]}



UPDATES:
Bedingungen sind nun an erweitertes Variablenhandling angepasst!

Eine Menge Bugfixes im Variablenhandling. Sollte jetzt auch bei tiefen Schachtelungen laufen (Siehe Listing)

"variable" Variablen sind nun auch möglich. Außerdem wird der
Variablentyp automatisch ermittelt, Anfüs in Arraynamen sind nicht
mehr nötig.
// (war alles gelogen=>zu viele Fehler)

Punksyntax tuts jetzt auch * Ich bin ja schon still... *


DOWNLOAD

INSTALLATION:
Alles in ein Verzeichnis knallen, index.php starten. Funktionsreferenz folgt.

Wen das hier nicht so zusagt, für den habe ich einen Link: http://www.sitepoint.com/forums/showthread.php?threadid=123769 Grins

Tester sind immer noch willkommen!


Zuletzt bearbeitet von am Sa 01.01.2005 14:11, insgesamt 1-mal bearbeitet
 
 
Ähnliche Themen kleines webprojekt php5 cms
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Projekte


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.