J'essaie de créer mon propre CMS pour moi-même et mes clients. Le système sera principalement utilisé pour les petits sites Web < 10 pages. Pour un plus grand projet, j'utiliserai probablement un système existant (MojoPortals, Umbraco, Kooboo). La raison pour laquelle je veux mon propre système est que j'ai un contrôle total et aussi parce que les systèmes existants sont surtout gonflés avec des fonctionnalités que je ne vais pas utiliser pour des projets plus petits. J'apprends aussi Asp.net Mvc donc c'est l'autre raison de construire mon propre système.Asp.net Mvc: Création d'un simple cms
Voici quelques-uns des systèmes que j'ai essayé (un peu plus que d'autres):
Celui que j'ai aimé tout de suite était MojoPortals. Principalement à cause du système de modules gauche-milieu-droit +. Donc, mes objectifs sont d'avoir un système où vous pouvez créer des pages et chaque page aura un espace réservé gauche, moyen et droit pour les modules. Les modules seront très basiques (Texte, Html, Image). Le système doit également être facile à déployer et à réutiliser.
J'ai déjà commencé à travailler sur mon système.
L'objet page ressemble à ceci:
public class Page
{
public int PageID { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public string Title { get; set; }
public IEnumerable<Module> Modules { get; set; }
}
L'objet du module ressemble à ceci:
public class Module
{
public int ModuleID { get; set; }
public string ModuleTitle { get; set; }
public string ModuleType { get; set; }
public string ModuleLocation { get; set; }
public Dictionary<string, string> ModuleValues { get; set; }
}
Voici comment mon point de vue ressemble: www.codepaste.com
plus tard je vais probablement ajouter un objet de site Web qui contient des informations pour quelle vue (modèle) il montrera.
Les questions que j'ai en ce moment concernent principalement la vue. La vue que j'ai liée a un code de base qui vérifie d'abord l'emplacement du module, puis affiche toutes les informations du module au bon endroit. Je voudrais que cette partie soit facile à réutiliser. J'ai donc pensé à faire une vue partielle fortement typée qui fait les choses à gauche, à droite et au milieu. Aussi pour les modules je pensais utiliser des vues partielles et rendre le partiel correct d'un certain moduleType. Donc le texte aura un partiel, le HTML en aura un et ainsi de suite. Je ne suis pas sûr que ce soit la bonne technique.
Alors, est-ce que je devrais utiliser une vue partielle pour gérer les choses gauche, milieu et droite et utiliser des vues partielles pour charger les modules?
Si quelqu'un a d'autres informations sur la construction d'un module basé sur des cms ou des techniques/structures que je peux utiliser, ce serait vraiment génial aussi.
Merci d'avance, Pickels.
Mon conseil serait de ne pas la peine - utiliser Umbraco (qui peut être adapté pour être très simple). L'effort de créer et de maintenir même un CMS apparemment simple est grand, et c'est avant l'inévitable glissement futur. Que se passe-t-il lorsque quelqu'un veut revenir à une version précédente du contenu? Votre schéma peut-il faire face à cela? –
Bonne question. Merci mec! – Shimmy