Museo&Web

Kit di progettazione di un sito di qualità per un museo medio-piccolo

wp5 logo
vai al contenuto
Ti trovi in: Home - CMS - Tutorial - Introduzione al sistema

Museo&Web CMS Open Source: Tutorial


Introduzione al sistema
a cura del CMS Team (Gruppo Meta, Firenze)

Il CMS M&W è basato sul framework che abbiamo chiamato Glizy.
Glizy è sviluppato utilizzando la programmazione ad oggetti e implementa diversi "design patterns" che verranno descritti in seguito.
Per la struttura dei file abbiamo deciso di utilizzare lo stesso criterio usato da JAVA (e copiato da .NET) chiamato reverse domain  (http://www.brajeshwar.com/archives/2005/02/class-naming-convention-reverse-domain/), quindi  ogni classe del sistema avrà il suffisso del dominio e sarà dentro delle sottocartelle.

Facciamo un esempio per una classe Prova, il nome della classe è sempre in maiuscolo, avremo questa struttura di file:
it/
dominio/
Prova.php

La classe sarà definita in questo modo:
{
}

Abbiamo scelto questa convenzione, non molto usuale per PHP, per evitare conflitti di nomi visto che il framework può essere facilmente espanso e che i nomi delle classi base e dei componenti principali sono abbastanza comuni.
Nel caso del CMS le classi e i componenti si trovano in org/minervaeurope.

Struttura dei file

Altro passo necessario prima di iniziare è capire come sono strutturati i file nel sistema.
Nel CMS possiamo dire che abbiamo due applicazioni che girano utilizzando lo stesso core (framework), una è l'amministrazione e l'altra il sito vero e proprio.
I file del sito sono nella cartella "MW" e quelli dell'amministrazione in "admin", definiamo ognuna di queste cartelle come "cartella dell'applicazione".
Ogni cartella dell'applicazione ha una struttura simile, per dare un dettaglio segue la descrizione della cartella del sito.

/MW
    classes/
    config/
    mediaArchive/
       Archive/
       Audio/
       Flash/
       Image/
       Office/
       Pdf/
    pageTypes/
    shutdown/
    startup/

classes/
questa cartella contiene le classi e i componenti dell'applicazione.
E' stato scelto di metterli qui per i seguenti motivi:
- per avere l'applicazione separata dai file del framework.
- poter archiviare/ripristinare velocemente un'applicazione, basta salvare la cartella MW e dentro c'è tutto (escluso il DB)
- il framework permette di gestire più applicazioni su una stessa installazione così lo sviluppatore potrà scegliere se installarle a livello di root (e quindi disponibile per più applicazioni) o solo per un'applicazione.

Dentro questa cartella ci saranno delle sottocartelle secondo il criterio del reverse domain.

config/
in questa cartella ci sono i file di configurazione dell'applicazione, credo che sia superfluo attualmente scendere in dettaglio su tutti i parametri o i file.
Per lo scopo di questa serie di tutorial vi chiedo solo di modificare il  parametro CACHE_CODE del file config.xml, in modo da disabilitare il caching dei file.

<glz:Param name="CACHE_CODE" value="0" />

mediaArchive/
contiene una sottocartella per ogni tipo di file permesso.

pageTypes/
contiene i file XML che descrivono le pagine, l'idea principale è nata da XUL ma poi ci siamo allontanato molto.

shutdown/
dopo l'output della pagina vengono caricati questi file.

startup/
prima del rendering della pagina vengono caricati questi file.

© Progetto Minerva 2006-05, ultima revisione 2006-05-25, a cura del WP5, Commissione di studio per la creazione di un prototipo di sito web culturale pubblico.
URL: www.minervaeurope/structure/workinggroups/userneeds/prototipo/cms/tutorial/introsistema.html