kostenloser Webspace werbefrei: lima-city


Webseite Modular aufbauen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    color

    Kostenloser Webspace von color, auf Homepage erstellen warten

    color hat kostenlosen Webspace.

    Hi

    ich habe ein CMS erstellt, mit dem man beliebig viele (unterschiedliche) Webseiten verwalten kann.
    Die Webseiten liegen alle auf einem Server, nur in verschiedenen Unterordnern.

    In diese Unterordner kommen so eine Art Templatedateien.

    In diesen Dateien ist im prinziep immer gleichviel HTML und PHP Code enthalten. Ich lade XML-Daten aus der Daten bank, wandle sie in ein Array und verteile sie mit Shorttags in der PHP-Datei.

    Jetzt hab ich immer etwa folgenden Grundaufbau:

    <body>
    	<div class="page">
    		<div class="header"></div>
    		<ul class="navigation"></ul>
    		<div class="text">
    			<h1>TITEL</h1>
    			<h2>SUBTITEL</h2>
    			<div class="info">
    				TEXT
    			</div>
    		</div>
    		<div class="Footer"></div>
    		<a title="Irgendwas" href="#" class="createdBy"></a>
    	</div>
    </body>


    Jetzt kommt aber noch dazu, das man in dem CMS auch 4 Felder frei hat, um Bilder einzusetzen.
    Diese Bilder können entweder frei im div.page-Element stehen, oder im Text oder überall.

    <div class="image left">
    	<img src="" title="" alt=""/>
    	<img src="" title="" alt=""/>
    	<img src="" title="" alt=""/>
    	<img src="" title="" alt=""/>
    </div>


    Momentan, muss ich immer, sobald auch nur die kleinste Grundgerüständerung vorhanden ist,
    die Templatedatei neu schreiben, anstatt das ich eine Zentrale Datei nutzen kann.

    So, HTML ist ja eine Sprache die den semantischen Aufbau beschreibt.

    Jetzt bräuchte ich eine Sprache die HTML zusammensetzt. Das heißt ich gebe es in etwa so an:

    html->
    	head->
    		->script:pfat-zum-JS
    		->css:pfat-zum-CSS
    		->meta
    			->diverse-angaben0
    	body->
    		->div.header
    			->div.images.left
    		->ul.navigation
    			->menuepunkte
    			->ul.pdf_files_1
    		->div.text
    			->h1
    			->h2
    			->div.info
    				->ul.pdf_files_2
    				->ul.other_files
    		->div.news
    			->ul.newslist
    		->div.footer


    Es beschreibt einfach nur grundlegenst den aufbau von HTML

    In-Das-Element-Soll->das hier geschrieben werden BEISPIEL:

    ->div.text
    	->h1
    	->h2
    	->div.info
    		->ul.pdf_files_2
    		->ul.other_files


    Erzeugt:

    <div class="text">
    	<h1></h1>
    	<h2></h2>
    	<div class="info">
    		<ul class="pdf_files_2"></ul>
    		<ul class="other_files"></ul>
    	</div>
    </div>


    ->h2 würde also ein Modul beschreiben das ich irgendwo gespeichert habe,
    es könnte so aussehen:

    h2{<h2>{-content-title-}</h2>}


    Das wäre die Datei "modul.code" oder so

    Dann wird das einfach interpretiert und mit den entsprechenden Daten aus dem Array $data_array["content"]["title"] gefüllt.

    Nur mir fehlt die richtige Idee das Umzusetzen.

    Fällt euch dazu was ein?

    Grüsse
    Color

    Beitrag zuletzt geändert: 3.6.2010 13:50:21 von color
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Wenn du die Daten schon als XML vorliegen hast, dann könnte XSLT für dich hilfreich sein. Da kannst du XML-Daten beliebig transformieren und beispielsweise auch (X)HTML daraus erzeugen. Lese dich mal in XSLT ein!
  4. Autor dieses Themas

    color

    Kostenloser Webspace von color, auf Homepage erstellen warten

    color hat kostenlosen Webspace.

    Wo steht das ich XML hab? :wink:

    Das Ganze hat nix mit XML HTML oder SGML was auch immer zu tun,
    es soll nur beschreiben welche Elemente in einem Dokument vorkommen sollen und wie sie Verschachtelt sind.

    Ich hab mir jetzt ein Konzept dafür ausgedacht, jetzt rätzel ich noch am RegEx rum.

    Grüsse
    Color
  5. Also, ich blicke das Problem nicht ganz.

    Aber so weit wie ich das verstanden habe, solltest du dir mal Template Inheritance ansehen. (Siehe Twig) Das setzt natürlich vorraus, dass du Twig als Templatesystem benutzen wirst (ich kenne zumindest keine andere Templateengine für PHP, die Vererbung unterstützt und stabil ist.)
  6. Also das von dir beschriebene Verhalten erinnert mich doch sehr an ein DOM, was durch XML zu beschreiben ginge. Im Prinzip scheint dir nur mehr nach einer anderen Art zu sein das zu beschreiben als mit HTML hab ich das richtig verstanden?
    Ansonsten muss ich sagen klingt das für mich auch nach einem klassischen Templateproblem.

    Beitrag zuletzt geändert: 4.6.2010 15:31:16 von sektor
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!