![]() |
| | Themen-Optionen | Thema durchsuchen |
| | Nach oben #1 |
| Martin Eisengardt Registriert seit: 30.03.2006 Ort: Pfinztal
Beiträge: 355
| Hallo zusammen. Ich bin inzwischen mit dem, was ich so habe, sehr unzufrieden. Drupal, Typo3 sind alle ziemlich merkwürdig, vor allem, wenn man dort was ändern oder erweitern will. Daher werde ich mein altes Webprojekt nun mal versuchen, zuende zu bringen. Nun hänge ich gedanklich etwas an dem CMS. Folgendes will ich realisieren: -> CMS Seiteninhalte, also Pflegen von Inhalten, beispielsweise via FCKEditor. -> Mehrsprachigkeit -> Kanalfähigkeit. Damit meine ich die Möglichkeit, die Inhalte auf unterschiedliche Weise zu präsentieren. Zunächst einmal als Standard-Webseite. Dann vielleicht eine spezielle Version nur für Suchmaschinen. Als Drittes vielleicht auch eine Generierung von PDFs. Hauptsächlich, da ich über das CMS dann auch sowas wie Handbücher pflegen will, die ich irgendwann als PDF generieren möchte. Mein Problem ist nun, wie ich Inhalte so abgebildet bekomme, dass ich sie auch beliebig formatieren und darstellen kann. Zunächst einmal die Frage, was ein Inhalt tatsächlich ist. Ich möchte folgedne Inhalte unterscheiden: 1. Plain text. 2. Richtext (formatierter Text, Mischtext beispielsweise mit kursiven Teilwörtern, eingebette Grafiken usw.) 2.1. Container. Die sollen entweder einfache Listen weiterer Inhalte sein oder die Inhalte anhand eines Layouts (zum Beispiel einer Tabelle mit 20%/80% Breite) definieren. 2.2. Images 2.3. Files (für Downloads usw.) 2.4. Links (Ein Softlink zu einem anderen Inhalt könnte einen Hyperlink generieren, Ein Hardlink verweist auf einen anderen Inhalt, der dann angezeigt wird). Ich hoffe und denke mal, dass ich damit so ziemlich alles abgedeckt bekomme, was HTML kann. Den Richtext stelle ich mir so vor, dass ich wie so eine Art Objektstruktur habe, beispielsweise wie in einem Word-Dokument oder einem Open-Office-Writer-Dokument. Dort steht dann beispielsweise drin Objekt(Text: "Hallo, ") + Objekt(Text, Fett: "Welt!") usw. Alle Inhalte (auch beispielsweise komplexe Inhalte, wie Gästebucheinträge) müssen intern als Plain-Text und Richtext umgewandelt werden können. Falls ihr eine PHP5-Klassenbilbiothek kennt, die so ein Richtext Objekt-Geflecht bereits abbildet, könnt ihr mir die ruhig nenne. Will das Rad ja nicht ständig neu erfinden. Google hat mir vieles angeboten aber das einzig ansprechende wäre eine Integration von OpenOffice in PHP, was aber für mich etwas überladen klingt. Jetzt gehen wir mal davon aus, dass ein User den Inhalt "Startseite" sehen will. Ich müsste also erkennen, dass es sich um einen normalen Browser handelt und einen entsprechenden Renderer laden. Der Renderer besorgt sich nun den Inhalt "Startseite", indem er ihn beispielsweise über die URL identifiziert. Er wandelt ihn als Richtext um und geht dann daran, das in HTML zu übersetzen. Er packt zudem beispielsweise ein Navigationsmenü, User-Login usw. Wie würdet ihr das Umsetzen in HTML denn machen? Ich habe gedanklich ein kleines Problem damit, sowas wie ein Layout dort reinzupacken. Beispiel: Ich schreibe ein Handbuch mit mehreren Absätzen, also simplen Text. Dazwischen packe ich ein Code-Beispiel und möchte im Text auf einzelne Code-Zeilen referenzieren. Ich stelle mir nun vor, dass mein Richtext so ausschaut: - Objekt(Text: "blablabla") - Objekt(Text;Code;Display-Lines: "if ($abcdef) {\n tuewas();\n}") - Objekt(Text: "blablabla. In Zeile 1 wird auf irgendwas geprüft und sollte diese Prüfung erfolgreich sein wird in Zeile 2 wird irgendwas aufgerufen.") Wie kann sowas ausschauen? Das klingt ja nach sowas wie Stylesheets, also irgendwelche Formatierungs-Klassen o.ä. einfügen und das Layout sollte wissen, wie das auszusehen hat. Kennt es das Layout nicht, nimmt es "Standard-Text". Alternativ kann man einen eigenen Inhalt definieren, der beim Umwandeln in RichText die Schriftart und Zeilennummern ergänzt. Das ist aber denke ich nicht sonderlich clever, denn vielleicht will ich, dass es im PDF farblich anders ausschaut, weil ich dort keine Hintergrundgrafik habe usw. Auch könnte man sowas (also Definieren eigener Inhalte) nicht sonderlich gut erweitern oder ändern. Dazu müsste man jedesmal in die PHP-Dateien rein. Ich bin da wie gesagt etwas blockiert, weil mir keine der Ansätze so richtig gut gefällt. Die Mehrsprachigkeit usw. setze ich übrigens relativ banal um. Inhalte werden über "Knoten" angesprochen. Bevor der tatsächliche Inhalt ermittelt wird, werden Attribute ermittelt, zum Beispiel "lang = de". Inhalte können nun für alle Attribute gut sein oder auch nur für eine bestimmte Ausprägung. Wenn ich also einen Mehrsprachigen Text definiere, sind die Links zum Text immer identisch. Der CMS-Knoten beinhaltet tatsächlich aber zwei Inhalte, einmal den deutschen und einmal den englischen. Ich könnte damit später sogar ohne zusätzlichen Programmieraufwand Downloads anbieten, die je nach Sprache auf eine jeweils andere Datei verweisen. Das ist denke ich eine gute Lösung. Zumindest gefällt sie mir Genug der Gedankenspiele. Über eine rege Design-Diskussion würde ich mich freuen.
__________________ Open Sourcing the Online Gaming Universe PHP/SQL/Java/C++/Assembler. Seit Jahren Mitglied und Entwickler in einem der wohl größten Java-Projekte der Welt: http://weblogs.java.net/blog/hansmul...e_desktop.html |
| | |
| | Nach oben #3 |
| Erfahrener Benutzer Registriert seit: 26.10.2005 Ort: Basel
Beiträge: 115
|
Wenn du es selbst umsetzen willst, steht dir ja jeder Weg offen. In diesem Fall würde ich mit vorher genau überlegen welches Layout welche Informationen benötigt und dann beim Erstellen der Texte und anschliessendem Speichern ALLE Informationen einer Seite in die DB zu packen. So kannst Du anschliessend die Inhalte durch einen eigenen oder teilweise fertigen Parser laufen lassen um entsprechende Layouts zu generieren. Für PDF gibts ja fertige Lösungen... eine kleine Hilfe könnte der Quellcode von "Joomla" sein, wo du die Seiten als PDF ausgeben lassen kannst.
__________________ Wer später bremst, fährt länger schnell... |
| | |
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | Thema durchsuchen |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Gaming Framework | mepeisen | Projekte unserer Mitglieder | 0 | 16.01.2008 11:34 |
| CMS für Kunden aufsetzen | Basti | Gesuche | 1 | 11.01.2008 17:48 |
| Framework für CMS? | Neq' | Anwendungsdesign / Softwarearchitektur | 6 | 06.12.2007 19:10 |
| Zend Framework 1.0.2 veröffentlicht | Ben | Nachrichten | 0 | 26.09.2007 15:53 |
| Wir unterstützen das inoffizielle deutsche Forum zum Zend Framework | Ben | Ankündigungen | 0 | 28.12.2006 15:51 |