php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 25.01.2005, 11:15  
Gast
 
Beiträge: n/a
Standard Modularer Aufbau von cms!

Moin!

Zu Lernzwecken baue ich gerade mein eigenens kleines Content-Management-System, verwende hierbei erstmals Klassen!

Die gesamte Programmlogik steckt in einer PHP-Datei, nach Bedarf werden die jeweils notwendigen Klassen inkludiert ...

Als TemplateSystem verwende ich Smarty! Der Anwender soll seine Templates nach Bedarf zusammenbauen können, z.B. Links Kalender anzeigen und Rechts eine shoutbox ...

Dazu würde er die entsprechenden Smarty-Tags setzen, also z.B. {include file="modules/shoutbox.tpl"}

Wenn nun z.B. die URL www.blabla.de/cms.php aufgerufen wird die beide Module enthält muss ich irgendwie erkennen welche Templates ich parsen muss ... also smarty muss mir eine Liste mit Tags zurückgeben und ich muss gucken ob z.B. shoutbox.tpl oder calender.tpl vorkommt und dann entsprechend das notwendige Template mit Leben füllen ... ist sowas möglich? Alternativ könnte ich ja eine Konfigurationsdatei bauen, wo in Form von mehrdimensionalen Arrays für jedes neue Template explizit angegeben wird, welche Module "gerendert" werden müssen... wäre aber etwas unflexibel.

Bei dem System soll es z.B. auch möglich sein das der Endnutzer eigene Module schreibt, also z.B. Modul Gästebuch, er würde dann die entsprechenden Templates gestalten und die Logik würde dynamisch ins Hauptscript inkludiert (über einen Load-Handler bzw. eine erweiterte Standardklasse für Module die dann jeweils um die notwendige Funktionalität erweitert wird).

Die Frage die sich mir stellt ist, ob der Ansatz überhaupt praktikabel ist und ob auch andere "Plugin"-Schnittstellen ähnlich strukturiert sind.

Danke!

Stefan
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 25.01.2005, 13:20  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.234
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

Prinzipiell würde sich hier ein Gang über Factories anbieten für die Logik. Nehmen wir einmal das Beispiel "Shoutbox".

Auf einer Hauptseite wird irgendwo die Shoutbox.tpl eingefügt. In dieser Datei musst du ja sowieso irgendwie auf die Logik deiner Shoutbox zugreifen. Du kannst dann beispielsweise definieren, dass innerhalb der "Shoutbox.tpl" eine kurze Anweisung erfolgen muss, die zuerst deine Shoutbox initialisiert.
Meinetwegen so etwas wie:

PHP-Code:
<?php
$shoutboxObject 
$moduleFactory->requestModule('Shoutbox');
?>
bzw. das entsprechend in regulären Smarty- Anweisungen übersetzt. Du zwingst also vor der Verwendung eines Moduls den Template- Schreiber dazu, dieses mittels einer geeigneten Anweisung zu initialisieren. Der Vorteil ist, dass dies vollkommen flexibel ist und du so nicht festgelegt bist. Du musst auch nicht im CMS wissen, wie und wann du die einzelnen Module initialisierst.

Wenn du nun noch einen eindeutigen Weg findest, wie Module definiert werden, beispielsweise als Verzeichnis in einem 'modules'- Ordner mit einer Datei 'create_instance.php' oder so, hast du ein flexibles und ausbaubares System...

Ich hoffe mal, du verstehst, was ich meine.
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline   Mit Zitat antworten
Alt 26.01.2005, 16:54  
Gast
 
Beiträge: n/a
Standard

falls du nix gegen "pull" hast kannst du auch für jedes deiner module smarty funktionen registrieren. das würde dann dazu führen das die initialisierung der einzelnen module onthefly passiert.

Code:
...
{shoutbox}
...
über parameter könnte mann dann zusätzlich die module konfigurieren ;
Code:
...
{shoutbox pagesize=10}
...

gruss
Sike
  Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Aufbau einer SESSION-Datei inu PHP Tipps 2006 4 10.05.2006 09:47
[Erledigt] Einfacher Aufbau eines internen Mailsystems Datenbanken 13 10.02.2006 11:03
Aufbau von MySql PHP Tipps 2007 2 22.11.2005 13:18
Aufbau eines flexiblen Webkatalogs / ODP PHP Tipps 2007 2 01.11.2005 16:16
[Erledigt] Eure Meinung zu Menü, Aufbau, und Design HTML, Usability und Barrierefreiheit 10 26.10.2005 13:55
Aufbau einer Mailroutine nussbaum PHP Tipps 2005-2 4 07.09.2005 13:15
HP Aufbau PHP Tipps 2005 13 05.05.2005 11:33
Aufbau php.ini Faebe PHP-Fortgeschrittene 3 31.03.2005 19:25
aufbau einer Seite HTML, Usability und Barrierefreiheit 13 17.03.2005 18:35
[Erledigt] .txt - file mit xml aufbau auslesen PHP-Fortgeschrittene 1 15.02.2005 01:33
Modularer Aufbau, wie? PHP-Fortgeschrittene 26 31.01.2005 20:16
Aufbau der Seiten - Verbesserungsvorschläge? PHP Tipps 2004-2 0 09.12.2004 20:09
Strukturierter Aufbau Mano PHP Tipps 2004-2 4 05.12.2004 13:33

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
aufbau eines cms, php modularer aufbau, cms aufbau, aufbau cms php, php modular, php seite laden modular, cms modularer aufbau, wie baue ich php modular auf, php cms struktur, aufbau eines cms php, modulares cms vorlage, shoutbox cms php, php cms modul struktur, shoutbox.tpl, aufbau eines cms template, modulares cms, aufbau eines cms moduls, strukturaufbau php programm, php cms modul, php eigenes cms modular

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:14 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.