2012-04-06 2 views
0

Ich versuche, meine benutzerdefinierten cms geschrieben in PHP in .net C#. Ich dachte daran, cms als Lernprojekt zu verwenden. Ich werde C#, NHibernate ORM-Ebene, mssql, mvc3 und jquery verwenden.Noch eine .net benutzerdefinierte cms

Ich bin mir bewusst, es gibt viele Werbespots oder Open-Source-cms, aber immer noch werde ich einen Teil meiner Freizeit damit verbringen, neue Technologien zu lernen, die an einem Projekt wie diesem arbeiten.

Also, gibt es jemanden gibt, der bereit ist, ein paar Ideen zu teilen über das Erstellen cms Domain-Modell, nützliche Link, Ideen etc.

Dank

Antwort

2

Eine wirklich grundlegende CMS aus 3 Elementen bestehen:

  • eine Datenbanktabelle für Ihre "Seiten". Die Tabellenstruktur ist "Name" und "Gehalt"
  • eine Routenanfrage vom Typ /cms/pagename auf einen festen Controller zu transformieren, die so genannten Methode cms und pagename als Parameter
  • a embeddable HTML-Editor

Jetzt Es gibt zwei Möglichkeiten, wie Ihre "Seite" aufgerufen werden kann. Es ist entweder create mode oder view/edit mode.

Im "create" -Modus wird die Seite angefordert, aber sie ist noch nicht in der Datenbank (z. B. cms/announcement1). In diesem Modus erstellen Sie eine Ansicht, die aus einem HTML-Editor besteht, und beim Übergeben behalten Sie die Seite in der Datenbank bei.

Im "Ansicht" -Modus wird die Seite angefordert und ist IS in der Datenbank. Sie führen alle erforderlichen Umschreibungen durch (z. B. schreiben Sie interne Links des Formulars [cms/pagename] in eine vollständig routbare http-Adresse um) und rendern den Inhalt.

Wenn der Benutzer berechtigt ist, die Seite zu bearbeiten, zeigen Sie auch eine Schaltfläche "bearbeiten" an, die dann den HTML-Editor mit der geladenen und bearbeitbaren Seite aufruft.

Und das ist es.

Es gibt Tonnen von zusätzlichen Elementen (Caching, verschiedene integrierte Seitentypen, Bilder einbetten, youtubes, vorformatierte Texte) usw. aber alle sind optional und Sie können neue Funktionen einführen, wenn Sie den Kern bereits implementiert haben.

Sobald ich ein einfaches CMS nach der obigen Struktur geschrieben habe, war es Teil einer größeren Lösung und wurde bis jetzt mehrere hundert Mal erfolgreich eingesetzt. Ein Vorteil eines benutzerdefinierten CMS ist, dass es wirklich einfach und leicht zu pflegen ist.

+0

Wenn ich richtig verstanden habe, haben Sie expirience in bulding custom cms. Ist Ihr System Plug-in-fähig? Ich bin sehr daran interessiert, ein erweiterbares System zu bauen, keine Ahnung, wo ich anfangen soll. – BobRock

+0

Nein. Es gibt einige zusätzliche Funktionen für Datei-Uploads/Downloads und integrierte Seitenvorlagen, aber keine Plugins. –