pepe_C Geschrieben 31. Mai 2006 Teilen Geschrieben 31. Mai 2006 hallo an alle, um direkt auf den punkt zu kommen. ich habe die idee ein cms zu "bauen" ein eigenes und ich muss ganz ehrlich gestehen ich habe nicht einmal nen plan wie die cms teiele funktionieren und ich wollte euch fragen ob mir jemand bei dem konzept zu dem teil ein wenig helfen kann? oder vielleicht habt ihr ja ne idee was man wie beachten muss etc. ich bin noch in der ausbildung zum fachinformatiker und stelle mich dieser bestimmt nicht kleinen aufgabe um einen richtigen einblick in die programmierung zu bekommen. was würdet ihr euch vorstellen was ein simples cms bringen muss, ich nene es mal cms weil mir kein passender begriff einfällt. so nach dem motto wie ne art portalmanager aber mit mysql anbindung und templates etc. da ich mich damit null auskenne denke ich der versuch ein "CMS" zu programmieren wird mir auf jeden fall helfen die lokik der verschieden sprachen zu verstehen und sinnvoll anzuwenden ob das ding am ende das bringt was ich mir jetzt vorstelle oder ob ich feststelle das ich das projekt in teilprojekte zerlegen musss und schön eins nach dem anderen mache das ergibt sich erst noch. was haltet ihr von der idee und wer kann mir weoche tipps geben? mfg Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Unique86 Geschrieben 31. Mai 2006 Teilen Geschrieben 31. Mai 2006 Ich glaub du weißt nicht was da für eine Arbeit auf die zukommt ^^ CMS sind Template basieren d.h. interpreter-code ist vom rest(html) defintiv schoneinmal KOMPLETT getrennt. Es dauert EWIG bis du so etwas komplett brauchbar auf die beine stellst und es gibt 10,100,1000 was weiß ich wieviele kostenlose gute alternativen die schon alles können ... also wieso das rad neu erfinden wenn schon eins da ist ??? gruss sven Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
pepe_C Geschrieben 31. Mai 2006 Autor Teilen Geschrieben 31. Mai 2006 ich weiß das es tausende kostenlos gibt aber das ist ja nicht sinn und zweck der übung sondern ich will den umgang mit den programmiersprachen lernen und da ich den hals voll habe oop taschenrechenr zu bauen oder das selbe in php und c# und c++ und c will ich ein großes projekt machen was mich bestimmt überfordert aber an seinen aufgaben soll man doch wachsen oder verstehe ich das falsch mfg wenn es nur darum ginge das ich eins bräuchte würde ich das interxx ding installieren und loslegen aber wie gesagt darum geht es nicht dank trotzdem Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
djpauer Geschrieben 1. Juni 2006 Teilen Geschrieben 1. Juni 2006 als 1. musst du dir mal deinen pc PHP & MySQL fähig machen mit XAMP oder WAMP dann würd ich mal ausschau halten nach TYPO3 oder die neuere variante TYPO4 dazu gibts auch en gutes buch von Galileo Computing kannst ja malnachgucken Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
baba007 Geschrieben 1. Juni 2006 Teilen Geschrieben 1. Juni 2006 ein paar nützliche Links erster zweiter dritter Zu lernzwecken sind solche Anwendungen immer gut, weil man in die Gebiete vorstößt, die man nicht ansatzweise beherrscht. PHP kann viel mehr als DB zugriff und echo $xyz. Auch Mysql oder eine andere DB kann viel arbeit abnehmen, wenn man sie richtig konfiguriert viel spass Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Stephan601 Geschrieben 1. Juni 2006 Teilen Geschrieben 1. Juni 2006 Hier hab ich mich schlau gemacht. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
tobias-digital Geschrieben 1. Juni 2006 Teilen Geschrieben 1. Juni 2006 dann würd ich mal ausschau halten nach TYPO3 oder die neuere variante TYPO4 Hab ich was verpasst? Was soll denn typo4 sein? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
schlati Geschrieben 1. Juni 2006 Teilen Geschrieben 1. Juni 2006 Hab ich was verpasst? Was soll denn typo4 sein? Das ist doch der Codename für TYPO3 Version 4.0 :floet: Immerhin ist die Bezeichnung mit der 3 (von TYPO3) und der 4 (von Version 4.0) in einem Atemzug schon sehr komplex. Irgendwie gehen mir aber hier alle Antworten an der eigentlichen Fragestellung vorbei - der Threadersteller will kein fertiges CMS, sondern Ideen&Ratschläge zum Bau eines eigenen. Also: 1. Überlegung, was das CMS so alles können muss. 2. Entscheidung, mit welcher Programmiersprache/Datenbank das realisiert wird. 3. Know-How zu der in 2 gewählten Sprache/Datenbank ranschaffen. 4. Zaghaft loslegen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
tobias-digital Geschrieben 1. Juni 2006 Teilen Geschrieben 1. Juni 2006 Will ja nicht drauf rumreiten, aber zum Thema "Codename für typo3 4.0" gibt's ne Diskussion auf Typo3-dev: http://lists.netfielders.de/pipermail/typo3-dev/2004-April/002635.html Ansonsten würde ich empfehlen, zunächst mal zu überlegen was man eigentlich mit dem CMS machen möchte. Ich würde halt sagen: MySQL DB in der die Seiteninhalte und die Sitemap gespeichert werden, PHP Skripte um die Daten aus der Datenbank in die Seite zu laden und Menüs zu erstellen. Ich denke jeder kommt irgendwann an den Punkt wo er überlegt sich sein eigenes CMS zu bauen. Ich hab das nach ca. 1 Jahr aufgegeben. Es wird meistens zu komplex. Und es gibt einfach verdammt gute CMSe, siehe typo3. Grüße, Tobias Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
djpauer Geschrieben 1. Juni 2006 Teilen Geschrieben 1. Juni 2006 Hab ich was verpasst? Was soll denn typo4 sein? sorry, hab mich verguckt hatte was anderes gelesen, war aba auch schon recht spät wie man sieht und ich war für informatik - theorie prüfung am lernen hatte mich pers. aba auch gewundert. naja wie gesagt: gucki lucki uhrzeit Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
SNOWMAN Geschrieben 1. Juni 2006 Teilen Geschrieben 1. Juni 2006 kurz überlegt reichen zwei seiten und man hat ein cms die erste seite - ich nenn sie index.php - holt sich daten aus der datenbank - die nenne ich mal news - und zeigt diese einfach an die zwiete seite - betitel ich mit admin.php - hat n eingabefeld wo ich was eingeben kann und n speichernbutton der die daten in die datenbank schreibt fertig das kann man erweitern, zB ein css-editor eine kommentarfunktion, das user kommentare zu news abgeben können die möglichkeit, die news zu löschen (ohne direkt in die db zu gehen) berechtigungen -> admin können news löschen, mods oder authoren nur schreiben und editieren etc. pipapo grundlegend halt: backend zum bearbeiten der daten frontend zum anzeigen der daten was das anzeigen und bearbeiten im genauen betrifft ist da völlig egal, und wenn das backend daraus besteht, eine textdatei zu öffnen und in diese zu schreiben und das frontend diese textdatei dann ließt und ausgibt. man hat ein conten management system Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_JesterDay Geschrieben 2. Juni 2006 Teilen Geschrieben 2. Juni 2006 kurz überlegt reichen zwei seiten und man hat ein cms die erste seite - ich nenn sie index.php - holt sich daten aus der datenbank - die nenne ich mal news - und zeigt diese einfach an die zwiete seite - betitel ich mit admin.php - hat n eingabefeld wo ich was eingeben kann und n speichernbutton der die daten in die datenbank schreibt fertig das kann man erweitern, zB ein css-editor eine kommentarfunktion, das user kommentare zu news abgeben können die möglichkeit, die news zu löschen (ohne direkt in die db zu gehen) berechtigungen -> admin können news löschen, mods oder authoren nur schreiben und editieren etc. pipapo Bei deinen 2 Seiten fehlt noch die Vorlage zum anzeigen der Daten Und deine Aufzählung zu den News etc. sollten keine Grundlegenden bestandteile des CMS sein, sondern PlugIns/Module/Extensions (wie du die auch immer nennen willst). Ein CMS selbst zu programmieren ist keine triviale Aufgabe, aber dauert auch nicht ewig, wie im ersten Beitrag angesprochen. Ich weiß das, weil ich selber eins geschrieben hab (und immernoch dran rumbastel und verbesser etc.) Also erstmal brauchst du ein Skript, das nichts anderes tut, als eine Vorlage zu nehmen und sie mit Inhalten zu füllen. Das ist grob gesagt alles, was ein CMS tut und tun muss. Was das genau für Inhalte sind regelt dann das, was man sieht und tun kann damit. Also überleg dir (auf Papier am besten erstmal) was dein CMS können soll. Da wären z.B.: * Vorlage auslesen * Vorlage mit Inhalt füllen (Inhalte aus DB oder sonst woher) * Inhalte in einem Menü o.ä. zugänglich machen Das wären erstmal die grundlegenden Dinge. Weiter kommt dann noch dazu: * Eine Rechtestruktur * Inhalte nach Berechtigungen anzeigen oder nicht * CMS erweiterbar machen (PlugIns/Module/Extensions... für Dinge wir News mit Kommentaren, Gallerien, andere dynamische Dinge...) Front-/Backend muss nicht unbedingt sein (bei meinem gibt es z.B. kein Backend. Ist aber nicht meine Entscheidung gewesen das so zu machen), es trennt die Aufgaben aber klar voneinander ab und man umgeht damit u.U. ein paar Sicherheitsrisiken. Um jetzt nicht noch mehr Romane zu schreiben, was ein CMS eigentlich ist: http://de.wikipedia.org/wiki/Content-Management-System Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
SNOWMAN Geschrieben 2. Juni 2006 Teilen Geschrieben 2. Juni 2006 Bei deinen 2 Seiten fehlt noch die Vorlage zum anzeigen der Daten Reicht doch, wenn es als simpler Text ausgegeben wird, pff... wer braucht schon Bilder und Farben und als das Glump Also ich würde empfehlen, zu versuchen, das möglichst modular aufzubauen, so hat man weniger probleme beim Erweitern. Wenn das ganze zu statisch von den Modulen wird, dann darfst, bei ner etwas größeren Erweiterung gleich noch andere Module anpassen das XYZ ABC und pipapo wieder geht... ich hab mich auch mal dran versucht, is aber gescheitert... zum einen wegen zu statischem aufbau, jede neue seite hat irgendwie veränderungen überall erfordert und html != html, firefox und ie differenzen sind einfach nur zum ****en, anders kann ich das nich sagen. Ich würd Smarty als Templetaengine empfehlen, macht Spaß damit zu arbeiten, mir zumindest Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
pepe_C Geschrieben 3. Juni 2006 Autor Teilen Geschrieben 3. Juni 2006 hab alles gelesen werde mich jetzt erstmal hinsetzen und die frontend und die struktur aufmalen etc. dann stelle ich das zeug hier rein und ihr könnt mir ja eure meinungen sagen und was noch fehlt usw. mfg Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_JesterDay Geschrieben 5. Juni 2006 Teilen Geschrieben 5. Juni 2006 Wenn das ganze zu statisch von den Modulen wird, dann darfst, bei ner etwas größeren Erweiterung gleich noch andere Module anpassen das XYZ ABC und pipapo wieder geht... ich hab mich auch mal dran versucht, is aber gescheitert... Zu statisch? Versteh nicht ganz, was du damit meinst, aber ich bin nicht gescheitert Mein CMS läuft (für unsere Firmenseite) und wird grad weiterentwickelt und soll dann auch zum freien Download zur Verfügung gestellt werden. Bei mir gibt es einen Kern, der die Hauptaufgaben übernimmet, also die Eingaben (URL + Parameter) nehmen, damit aus der DB die gewünschte Seitenstruktur bestimmen und die gewünschten Inhalte. Dann das ganze noch zu einer Seite (mit Template, aber nicht Smarty o.ä.) zusammenfügt und ausgibt. Inhalte können statische HTML-Inhalte (aus der DB) sein, oder (bei uns) sog. Module. Ein Modul kann theoretisch alles sein, was sich aufrufen läßt und eine Ausgabe (Text) zur Verfügung stellt. In der Theorie kann damit alles was sonst auch auf einem WebServer läuft eingebunden werden. Probiert hab ich das bis jetzt nur mit eigen entwickelten Modulen und MediaWiki. Zum Anpassen und Übergeben der Daten (Benutzername u.ä.) braucht man u.U. nur ein "Startskript", was die Daten des CMS nimmt und für anpasst. Also: ein Kern, der die Hauptsache übernimmt, die wirklich zwingend benötigt wird. Alles andere (Editieren der Inhalte, anlegen von neuen Inhalten, neuen Seiten etc.) wird per Modul gemacht. Natürlich kommt es u.U. bei größeren Änderungen, die die Hauptstruktur betreffen, zu Konflikten... aber solche großen Änderungen sollten eher selten sein, wenn das Ding erstmal steht, und alle "normalen" Änderungen wirken sich kaum auf den Rest aus. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
SNOWMAN Geschrieben 6. Juni 2006 Teilen Geschrieben 6. Juni 2006 Zu statisch? Versteh nicht ganz, was du damit meinst... Nun, das was du beschrieben hast ist nicht statisch, statisch wärs, wenn du zB keinen zentralen Kern verwendest, sondern jede Seite eine eigene Verarbeitung der Daten vornimmt. Ggf. werden die Funktionen dann in eine eigene Datei ausgegliedert, aber trozdem müssen diese angepasst werden, wenn ein neues Modul einen neuen Datentyp verarbeitet oder Ein neuer Rückgabewert hinzukommt, welcher bei anderen Seiten mit speziellem Fehler gemeldet werden soll oder was auch immer. ich hab versucht ohne DB auszukomme (was einfache Files mit einschließt)... das hat nur unnötige mehrarbeit verursacht welche mir die lust geraubt hat :/ Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
SatansEier Geschrieben 4. Juli 2006 Teilen Geschrieben 4. Juli 2006 ..ihr bringt mich auf ideen.. wenn ich euch was zeigen darf: <? session_start(); include("connect.php"); include("check.zugriff.php"); { //if access granted include("head.php"); include("banner.php"); include("masken.php"); include("navigation.php"); include("navigation1.php"); include("hauptfenster.php"); include("footer.php"); } ?> [/PHP] so sah meine index.php bisher aus. bestehend aus teilstücken die am ende zusammengefügt werden. bekommene gedankenstöße durch diesen thread: "cms, templates" templates find ich cool und deutlich übersichtlicher- als engine nehm ich wahrscheinlich smarty wenn mich niemand zu was anderem bekehrt. zum thema cms sind noch ein/zwei fragen offen. bekommt jemand ne saubere definition hin um cms (content-management-system), angesichts der oben stehenden vorgabe, verstänlich in worte zu fassen? welche möglichkeiten hab ich, wie geh ich logic und struktur an? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
SatansEier Geschrieben 4. Juli 2006 Teilen Geschrieben 4. Juli 2006 moep stand auf`m schlauch..sry. cool ich hab ohne zu wissen wie es heist, ein serverseitiges cms geschrieben:D Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_JesterDay Geschrieben 5. Juli 2006 Teilen Geschrieben 5. Juli 2006 . zum thema cms sind noch ein/zwei fragen offen. bekommt jemand ne saubere definition hin um cms (content-management-system), angesichts der oben stehenden vorgabe, verstänlich in worte zu fassen? welche möglichkeiten hab ich, wie geh ich logic und struktur an? Kapiere irgendwie nicht ganz, was du von uns willst. Aber zum Thema CMS/Templates: CMS ist eigentlich die strikte Trennung von Layout und Inhalt. Du hast ein Layout (Template) und dieses Layout füllst du nur mit Inhalten. Diese Inhalte verwaltest du irgendwie, aber auf jeden Fall getrennt vom Layout. Bei deinem Ansatz ist die fertige HTML-Seite ja schon im Ansatz komplett zerstückelt und jede eingebundene Seite trägt einen Teil zum endgültigen Layout bei. Übersichtlich ist das ja nicht gerade und Änderungen möchte ich da nicht machen müssen Und ist ein serverseitiges CMS nicht das, was man im allgemeinen unter CMS versteht (also Systeme wie Joomla, Typo3 etc.)? Clientseitiges CMS ist ja ein Programm, was auf dem Client läuft und die Inhalte und das Layout auch dort verwaltet. Am Ende kommen beim clientseitigen CMS kommen statische HTML-Seiten raus, die du dann auf den Server laden musst. Bei serverseitigen wirken sich also Änderungen an Inhalten direkt aus, bei clientseitigen musst du die Seiten erst wieder erstellen und hochladen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
SatansEier Geschrieben 5. Juli 2006 Teilen Geschrieben 5. Juli 2006 öhm ähm ja *hust* vergessen wir das *grinst verstohlen* zum thema wartung/änderung JD.: wenn du den >Kot< selbst geschrieben hast, fällt`s dir einfach neue funktionen einzubinden, muss aber jemand anders ran... du hast schon recht, dass ist stuss. schreib noch nicht sehr lange mit php und hab auch noch keinen vergleich zu meinem aufbau gesehen ^^ templates sind ne feine sache, wie`s mir durchs recherchieren aufgefallen ist. die ersten schritte sind leider die schwierigsten. wie geh ich`s an? gibt`s bücher, links die sich bei euch bewärt haben? was haltet ihr von dem? http://www.galileocomputing.de/katalog/buecher/titel/gp/titelID-1208?GalileoSession=71170084A2lW.x.-6GE Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kills Geschrieben 6. Juli 2006 Teilen Geschrieben 6. Juli 2006 Hi, wenn ich dir nen Tipp geben darf... www.redaxo.de ... damit hast du ein Grundgerüst und dann baust du dir mit Addons/Modulen den Rest dazu,.. Gruß, Markus Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_JesterDay Geschrieben 6. Juli 2006 Teilen Geschrieben 6. Juli 2006 templates sind ne feine sache, wie`s mir durchs recherchieren aufgefallen ist. die ersten schritte sind leider die schwierigsten. Mit templates meinte ich allgemein eine Vorlage, nicht unbedingt Smarty o.ä. Bei mir ist eine template im CMS einfach eine Textdatei die ein komplettes HTML Gerüst enthält und ein paar Platzhalter. Diese werden dann im Code einfach durch anderes ersetzt. Sind nur einige Zeilen Code und ob sich dafür eine template Engine lohnt... Außerdem muss Smarty ja auf dem Server installiert werden (/usr/local/lib/php/Smarty/) und das kann nunmal nicht jeder (gerade bei Webspaceanbietern). Man sollte also schon abwägen, ob man Smarty o.ä. benutzt oder es nicht lieber doch selber schreibt. Klar kann smarty bestimmt ne Menge, aber ist das alles wirklich nötig immer? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
SatansEier Geschrieben 6. Juli 2006 Teilen Geschrieben 6. Juli 2006 wir haben hier im büro zum glück unsren eigenen webserver. was ist denn der unterschied zwischen standard template vorlagen --> Ausgabe = HTML.htm, Logic/Funktionen = php.php und der template engine --> smarty ? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_JesterDay Geschrieben 6. Juli 2006 Teilen Geschrieben 6. Juli 2006 was ist denn der unterschied zwischen standard template vorlagen --> Ausgabe = HTML.htm, Logic/Funktionen = php.php und der template engine --> smarty ? Was sind für dich standard template Vorlagen? Sowas gibt es nicht. Ich meine nur, für das einfache Ersetzen von paar Textstellen braucht man kein fremdes Programm einzusetzen. Unabhängig davon sieht meine eigene "template Engine", die ich in den meisten php Anwendungen so einsetze mittlerweile, so aus: Oberer Teil der php-Datei = php-Teil, unterer Teil = HTML Teil. Der php-Teil besteht fast ausschliesslich aus Funktionen (bis auf paar Dinge die bei jedem Aufruf anfangs gemacht werden sollen/müssen), die ihre Ausgaben als String zurückliefern und der HTML-Teil ist ganz normales HTML und an den variablen Stellen steht jeweil ein <?php echo Funktionsname(); ?> Ist natürlich Geschmackssache und es gibt bestimmt auch Situationen, in denen die Lösung nicht so gut ist, ein CMS (also die gesamt Ausgabe der eigentlichen Template) z.B.. Mit Smarty hab ich mich selbst nur kurz beschäftigt. Ich fand die Lösung mit einer Serverinstallation und der benötigten Ordnerstruktur etc. nicht wünschenswert. Aber genug andere schwören auf Smarty. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kolibri Geschrieben 13. Juli 2006 Teilen Geschrieben 13. Juli 2006 du hast schon recht, dass ist stuss. richtig schreib noch nicht sehr lange mit php merkt man! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.