2009-04-05 12 views
5

PERCHÉ ?! ... Forse è il tuo primo pensiero quando leggi il titolo di questo argomento.Sviluppare il mio CMS proprio

C'è una varietà di CMS open source 'là fuori per soddisfare le esigenze di tutti. E immagino che tu abbia ragione ... in effetti sono molto d'accordo.

Ma questo argomento è per programmatori ingenui e testardi come me a cui piace davvero l'idea di sviluppare il proprio CMS da zero. Ma da dove comincio e quali dovrebbero essere i miei punti focali principali nella pianificazione di questo CMS?

Esistono buoni tutorial, articoli, libri, ecc. Per sviluppare da zero il proprio CMS?

Se no, forse qualcuno di voi ha provato a sviluppare il proprio CMS ... se è così, si prega di condividere esperienze positive e negative.

Grazie in anticipo

+0

Ho scritto il mio su kitgui.com e il suo approccio molto diverso come SAAS, basato sui feed e con editing in-page HTML5. Potrebbe darti alcune idee per te stesso in termini di creazione di qualcosa che sfrutta ciò che il web è ora, non ciò che il web è stato. –

risposta

10

Se non hanno risposte a queste domande già probabilmente stai partendo con il tipo di progetto sbagliato. Un CMS, anche uno di base, può essere una bestia molto complessa, ecco alcune cose che è necessario prendere in considerazione:

  • Come sarà il database guardare
  • Quanto è flessibile permetterai all'utente di essere sulla pagina di informazioni (ad esempio, come personalizzabile sono di proprietà)
  • che modo le persone modificare i dati della pagina
  • Come pensate di visualizzare la versione pubblicata di una pagina
  • Come pensate di supporto delle versioni
  • Che tipo di siti dovrebbe essere l'obiettivo per il CMS

Le risposte a queste domande aiuteranno a decidere come appare il database, come i progetti sono suddivisi, come gestire le persone che vogliono creare pagine e così via.

Suggerirei di iniziare guardando i progetti CMS open source e provando la sensazione di come sono andati a farlo, ti darà più un'idea quando cerchi di produrre il tuo. Altrimenti puoi facilmente essere sommersi dalle opzioni.

Modifica - Ho pensato di aggiungere, contribuisco a un CMS open source (Umbraco) quindi sono familiarità con ciò che deve essere fatto per un CMS, non sto solo di essere negativo

1

Una domanda molto importante è se si desidera che sia pesantemente lato server o lato client, a seconda che si sia più vicini a un wiki o un blog. Anche quali lingue e quale scala? Potrebbe essere una buona occasione per imparare qualcosa di nuovo se vuoi continuare a lavorarci per un po 'di tempo, ma se vuoi semplicemente superarlo usa una lingua che conosci.

3

Fallo a piccoli passi, prima un piccolo elemento di funzionalità, l'altro livello, quindi un altro. Se provi a definire prima tutte le funzionalità desiderate e provi a implementarle, probabilmente fallirai. Fatelo in modo incrementale. E non dimenticare le revisioni periodiche del codice e il refactoring.

8

Sì, un CMS può essere grande, ma possono iniziare in piccolo e come un progetto di apprendimento/divertimento che è abbastanza buono, e il vero punto di forza è che puoi utilizzarlo da solo. Se dovessi costruire un altro CMS, ecco un paio di cose che vorrei/non farei.

1) Non confidare al 100% di Xsl per creare i tuoi contenuti - sembrava una scommessa ragionevole nel 2001, e mi sbagliavo.

2) Non cercare di scrivere il proprio Javascript controllo Rich Edit/Flash - troppi buoni là fuori già

3) creano un CMS che fa qualcosa di unico - personalmente mi piacerebbe un CMS che mi permetterebbe di creare strisce di fumetti - andare in una nicchia

4) Elaborare un buon progetto di server/DB in anticipo.

5) basta farlo ...

0

Una linea "Ho costruire il mio CMS nel 2009" o di un simile "Con la nostra stessa CMS .." in un'introduzione aziende potrebbe essere un grande segno meno sulla mia lista quando devo prendere una decisione per assumerlo/loro.

Forse non il tipo di risposta che ci si aspetta, ma se fossi in te, prenderei in considerazione la possibilità di sviluppare alcuni moduli veramente nuovi per un CMS esistente. La mia scommessa personale è su Drupal, ma puoi trovare molte altre opzioni.

Miglior tempo trascorso, IMHO.

5

Suoni educativi per me. Nonostante le preoccupazioni degli altri, se sei interessato a comprendere i problemi che devono essere affrontati all'interno di un CMS, il modo migliore per apprenderne uno è crearne uno tuo o almeno crearne alcuni interessanti. Non userei uno homebrew per il mio repository. Ma, come costruire un compilatore e un interprete mi ha aiutato a capire meglio le tecnologie, lo stesso si applica al CMS. Non uso il compilatore o l'interprete che ho creato per "lavoro vero", ma sono contento di averli creati.

4

Ho sviluppato il mio cms, per me e per i miei clienti. Odio usare i programmi di qualcun altro a meno che non sia assolutamente necessario. Inoltre, dal momento che Im costantemente lo sviluppo di nuovi siti, è molto più conveniente utilizzando proprio cms e semplicemente sintonizzarsi un po 'ogni volta. Ad ogni modo. Come farlo? Inizia a fare qualcosa. Le persone si bloccano perché pensano che dovrebbero prima capire una struttura perfetta e così via. Rilassati, sarà perfetto. Probabilmente dovrai apportare qualche modifica più tardi. Ma nella mia esperienza, fare qualcosa di sbagliato e risolverlo è ancora più veloce che aspettare la visione di una soluzione perfetta per illuminarti. Quindi, siediti e inizia a scrivere pagina per pagina: aggiungi pagina, inserisci pagina, aggiorna pagina ... Ti renderai conto di cos'altro è necessario nel processo.

+0

buon punto su come ottenere qualcosa dal vivo. le web app non sono mai perfette e sforzarsi è solo qualcosa da respingere quando si spedisce. – GSto

1

Vorrei iniziare affrontando alcune delle cose comuni di cui tutti i CMS avranno bisogno e quindi costruendo da lì. Qui ci sono alcuni:

  • Autenticazione utente Si sta andando ad avere bisogno di essere in grado di gestire i clienti che stanno per modificare il contenuto, ed eventualmente altri utenti pure.
  • Pannello di amministrazione - Come stanno andando i vostri clienti a modificare il contenuto? Avrà bisogno di essere flessibile per supportare una serie di diversi set up.
  • Modifica di pagine - La maggior parte dei siti presenta semplici pagine statiche di qualche tipo, avrete bisogno di un modo per memorizzarle/modificarle.
  • Contenuto sindacato - Un'altra cosa che molti siti hanno, come un feed di notizie o post di blog.

Se hai fatto tutto questo, avresti l'inizio di un semplice CMS.

1

Ti consiglierei di non creare il tuo cms. Il tempo necessario per scrivere, perfetto, prova fittizia, scrivere documentazione, condurre test di usabilità, test su varietà di server, mercato, a meno che tu non abbia una squadra e tu sia ben finanziato, non ne vale la pena.

Ci sono altre cose che dovrete considerare, licenze, spese legali e l'aggiornamento del sistema. Accanto a come i tuoi acquirenti avranno la certezza che sarà disponibile un unico proprietario per fornire aggiornamenti. Parlo di una grande esperienza in questo settore poiché ho sviluppato il mio CMS per un cumulo di anni e vendere i cms diventa ancora più difficile dato che joomla, wordpress e drupal hanno un prezzo che non è possibile completare.

+0

Molti dei vostri commenti non sono applicabili se l'OP sta sviluppando CMS per le proprie operazioni interne. – Rob

Problemi correlati