Introduzione al CMS a cura del dott. Ventre Antonello.

36
Introduzione al CMS a cura del dott. Ventre Antonello

Transcript of Introduzione al CMS a cura del dott. Ventre Antonello.

Page 1: Introduzione al CMS a cura del dott. Ventre Antonello.

Introduzione al CMS

a cura del dott. Ventre Antonello

Page 2: Introduzione al CMS a cura del dott. Ventre Antonello.

Pagine statiche e dinamichePagine Statiche

HtmlNon cambiano nel tempo

Ogni modifica richiede una riscrittura di codice

Pagine Dinamiche ASP, Java, PHP, etc…

Subiscono cambiamenti nel tempo

Non richiede una riscrittura di codice

Page 3: Introduzione al CMS a cura del dott. Ventre Antonello.

Sistemi di CMSWEB Content Management System (CMS)

Sistema per la gestione dinamica di contenuti informativi (articoli, rubriche, notizie, faq, etc) da pubblicare su siti e portali web senza richiedere l'intervento di personale con particolari competenze informatiche, offrendo ai gestori strumenti semplici e veloci per l'inserimento e la modifica dei contenuti.

Page 4: Introduzione al CMS a cura del dott. Ventre Antonello.

WEB Content Management System (CMS) Contenuti editoriali, grafica e impaginazione svincolati modifiche apportate immediatamente disponibili Nel caso specifico di pubblicazioni web, l'autore è

completamente svincolato da qualsiasi problematica relativa alla formattazione dei contenuti secondo lo stile grafico previsto dal sito

Sistemi di CMS

Page 5: Introduzione al CMS a cura del dott. Ventre Antonello.

Perché un CMS?Mantiene separato il codice di programmazione, la grafica e i contenutiquesto significa che su ognuno di questi tre elementi possono intervenire persone diverse con competenze specifiche

il grafico web realizza l’interfaccia grafica del sito il programmatore informatico configura e

personalizza la struttura del sistema integrando il materiale grafico e realizzando eventuali template

l’azienda o l’ente committente provvede a gestire i contenuti

Page 6: Introduzione al CMS a cura del dott. Ventre Antonello.

Perché un CMS?Con un CMS viene tenuta distinta l’attività di sviluppo del sito dall’attività di mantenimento del sito

Prima fase : a cura della società informatica che realizza il progetto (il contenitore con tutti gli automatismi necessari).

Seconda fase : a cura dell’organizzazione committente  che inserisce e aggiorna le informazioni del sito (il contenuto).  

Page 7: Introduzione al CMS a cura del dott. Ventre Antonello.

Perché un CMS?Valorizza la natura  comunicativa del sito

Utilizza i template grafici

Consente di aggiornare il sito via web

Utilizza gli editor visuali

Crea in automatico la navigazione e la mappa del sito

Gestisce le fasi del lavoro (workflow)

Gestisce gli utenti

Page 8: Introduzione al CMS a cura del dott. Ventre Antonello.

Perché un CMS?Ha il motore di ricerca integrato

Gestisce il sito in lingue diverse

Dispone di moduli e componenti aggiuntivi

Integra e supporta  funzionalità evolute

È scalabile

Aiuta a creare e mantenere siti accessibili

Supporta il lavoro collaborativo

Page 9: Introduzione al CMS a cura del dott. Ventre Antonello.

Elementi di un CMSIl Content Manager

Contenuto

Metadati

La pubblicazione

Il target

Page 10: Introduzione al CMS a cura del dott. Ventre Antonello.

Architettura di un CMSAcquisizione e memorizzazione

Creazione Acquisizione Conversione Aggregazione

La gestione Memorizzazione Selezione Sicurezza/amministrazione Work Flow

La pubblicazione

Approval Routes

Page 11: Introduzione al CMS a cura del dott. Ventre Antonello.

Zope

Page 12: Introduzione al CMS a cura del dott. Ventre Antonello.

ZopeZope è il leader di mercato degli Application Server Open Source.

Mette a disposizione una architettura ad oggetti che permette di costruire portali Web potenti, modulari, dinamici ed in grado di offrire ottime prestazioni nella navigazione del sito.

Page 13: Introduzione al CMS a cura del dott. Ventre Antonello.

Strumento di sviluppo e di Web publishing dinamicoscritto per lo più in Python, che incorpora un server Web e un database object oriented.

Separa il livello dei dati dai livelli della logica Livello dati, archiviati in genere nel proprio database o in

database relazionali esterni. Livelli della logica, scritta con metodi Python, e della

presentazione, realizzata con un Html arricchito denominato Dtml (o recentemente con il linguaggio di templateTAL).

Amministrazione da browser Web              

Zope

Page 14: Introduzione al CMS a cura del dott. Ventre Antonello.

Principali caratteristiche di ZOPE: possibilità di utilizzo su piattaforme diverse: Windows,

Linux, Solaris, Hpux organizzazione in gerarchie di oggetti, con elementi

nativi di tipo folder, documents, images, mailhost, etc sofisticata gestione interna delle problematiche di

sicurezza operatività completa attraverso un qualsiasi browser linguaggi DHTML e TAL per la costruzione dinamica

delle pagine Web linguaggio Python per la implementazione delle classi

di base dell'applicazione

Zope

Page 15: Introduzione al CMS a cura del dott. Ventre Antonello.

Principali caratteristiche di ZOPE: Supporto di XML (anche per chiamate remote RPC) Interfaccia GUI ed estetica omogenea Database object oriented interno (ZODB) Connettività con i principali database relazionali Web server interno e supporto dei principali

WebServer presenti sul mercato Supporto nativo protocollo di SSL (Secure Sockets

Layer) Alte prestazioni in configurazione base e disponibilità

del modulo Zope Enterprise Option per siti ad altissima intensità di traffico.

Zope

Page 16: Introduzione al CMS a cura del dott. Ventre Antonello.

Caratteristiche tecniche Linguaggio di sviluppo: C (core), Python (Applicazioni) Database supportati: ZODB (Database OO nativo

interno), Database relazionali esterni (mysql, postgres, sybase etc...)

Sistemi operativi supportati: Tutti i sistemi Unix, Windows

Web Server: ZServer (Web Server nativo interno), Apache 1.3.x via PCGI o FastCGI

Requisiti client: browser internet Requisiti server: Apache (opzionale) con pcgi-wrapper

attivo oppure con modulo FastCGI abilitato, MySQL o altro database esterno prescelto

Zope

Page 17: Introduzione al CMS a cura del dott. Ventre Antonello.

PLONE

Page 18: Introduzione al CMS a cura del dott. Ventre Antonello.

PLONEPlone è un prodotto di Zope.

E’ un Content Management System Open Source completo.

E' ideale come server intranet, come sistema di publishing e come strumento di groupware per collaborazioni remote.

E' un CMS versatile che può essere utilizzato in diverse situazioni permettendo la creazione veloce ed organica di siti e portali dinamici ed evoluti.

Page 19: Introduzione al CMS a cura del dott. Ventre Antonello.

PLONEPossiede in modo nativo un motore di workflow, la gestione della sicurezza e degli utenti, una serie di oggetti per la gestione di contenuti già configurati (notizie, documenti, eventi, ecc.) e il supporto multilingua.

Plone inoltre segue attentamente gli standard di usabilità e accessibilità.

Le pagine di Plone sono compatibili con il rating W3C AA in materia di accessibilità e fanno uso di standard web come XHTML e CSS.

Page 20: Introduzione al CMS a cura del dott. Ventre Antonello.

Principali caratteristiche di Plone : editing remoto, elevata personalizzazione, funzionalità per la collaborazione, facilità di configurazione e amministrazione, gestione utenti, workflow, riutilizzo del codice, oggetti modulari, indicizzazione contenuti e funzioni di ricerca, supporto database relazionali esterni.

PLONE

Page 21: Introduzione al CMS a cura del dott. Ventre Antonello.

Caratteristiche tecniche Linguaggio di sviluppo: Python Database supportati: Database relazionali  (mysql,

postgres, sybase etc...) Sistemi operativi supportati: Linux, Windows, Mac

OS X, Solaris e BSD Web Server: Zope, Apache 1.3.x via PCGI o FastCGI Requisiti client: browser internet Requisiti server: Zope

PLONE

Page 22: Introduzione al CMS a cura del dott. Ventre Antonello.

20. Autenticazione e autorizzazione

© ecnoteca srl 2004

L'account degli utenti viene gestito tramite particolari folders, chiamati User Folders

Quando viene richiesto l'accesso ad una risorsa protetta il sistema chiede all'utente di autenticarsi.

Una volta autenticato, il processo di assegnazione dei permessi è suddiviso in 2 livelli intermedi:

- ruoli (roles)

- permessi (permissions)

I 2 livelli sono collegati dalle politiche di sicurezza (security policies), che definiscono chi può fare cosa.

Page 23: Introduzione al CMS a cura del dott. Ventre Antonello.

21. Gestione della sicurezza

© Tecnoteca srl 2004

La gestione della sicurezza di Zope si basa su tre concetti fondamentali:

ruoli

permessi

politiche di sicurezza

Page 24: Introduzione al CMS a cura del dott. Ventre Antonello.

34. Combinazione ZOPE/PLONE

© Tecnoteca srl 2004

Orientamento agli oggetti

Database

Ricerca integrata

Multipiattaforma

Copie personalizzate degli script

Workflow

Scalabilità

Efficace ed elegante ambiente per la navigazione

Facilità nella creazione di documenti strutturati anche complessi

Page 25: Introduzione al CMS a cura del dott. Ventre Antonello.

35. Installazione di PLONE

© Tecnoteca srl 2004

PLONE è liberamente scaricabile da http://plone.org/downloads/

Nel caso di installazione su Windows possiamo evidenziare 2 metodi:

• codice eseguibile

• codice sorgente

Lanciando l’installazione da eseguibile, verranno installate, fra le altre, le seguenti componenti base:

• Zope

• CMF

• Python

Page 26: Introduzione al CMS a cura del dott. Ventre Antonello.

37. La pagina iniziale

© Tecnoteca srl 2004

LogoRidimensionamento testo

Barra di ricerca

Footer

Stato e preferenze

Portal tabs

breadcrumbs

Left_slots Right_slots

Main content

Page 27: Introduzione al CMS a cura del dott. Ventre Antonello.

38. Accesso al sito

© Tecnoteca srl 2004

Le classi di utenti che possono accedere al sito sono le seguenti:

• Anonymous

• Utente Registrato (Member)

Per poter modificare i contenuti, un utente deve registrarsi.

Page 28: Introduzione al CMS a cura del dott. Ventre Antonello.

40. Il controllo del Workflow

© Tecnoteca srl 2004

Ogni oggetto può assumere diversi stati durante il suo ciclo di vita.

Lo stato di un oggetto determina se sia accessibile o meno dai vari tipi di utente definiti da Plone.

Il Workflow di Plone include 4 stati di default

Visibile

In Revisione

Pubblicato

Privato

Page 29: Introduzione al CMS a cura del dott. Ventre Antonello.

41. Ruoli degli utenti

© Tecnoteca srl 2004

Plone usa i ruoli per definire cosa possono fare e vedere i diversi utenti.La sicurezza viene tenuta quindi sotto controllo in ogni momento

I ruoli definiti in una installazione di default di Plone includono:

Anonimo (Anonymous)

Collaboratore (Member)

Possessore (Owner)

Revisore (Reviewer)

Manager

Page 30: Introduzione al CMS a cura del dott. Ventre Antonello.

42. Le “content tabs”

© Tecnoteca srl 2004

Le content tabs sono metodi/azioni definite nel contesto in cui ci troviamo.

Ogni oggetto ha le proprie tabs di default, altre se ne possono aggiungere. Alcune sono “hidden”, ma comunque accessibili in funzione dei privilegi dell’utente.

Le principali tabs (azioni) sono:

contenuti (contents)

visualizza (view)

modifica (edit)

visualizza contenuti (folder listing)

proprietà (properties)

stato (state)

Page 31: Introduzione al CMS a cura del dott. Ventre Antonello.

43. Cenni alla barra di stato

© Tecnoteca srl 2004

utente (user)

cartella personale (my folder)

preferenze personali (my preferences)

ripristina (undo)

esci (exit)

configurazione di Plone (Plone setup) (accessibile solo al Manager)

La barra di stato è composta da:

Page 32: Introduzione al CMS a cura del dott. Ventre Antonello.

© Tecnoteca srl 2004

La gestione degli utenti di Plone viene attuata tramite i seguenti Folders e Tools:

69. GESTIONE DEGLI UTENTI

Ogni utente iscritto presenta in Members un folder con id uguale al suo username.Tale folder è la sua home.

acl_users è gestito dal prodotto “Group User Folder” (GRUF).Qui possono venire assegnati ruoli e configurati gruppi degli utenti iscritti.

Folder Member

Folder acl_users

Tool portal_memberdata

Tool portal_membership

Page 33: Introduzione al CMS a cura del dott. Ventre Antonello.

© Tecnoteca srl 2004

Di default qualunque utente può accedere al sito e diventare un Member.

70. GESTIONE DEGLI UTENTI: Note sul folder “Members”

Questo può essere fatto andando in “Security” sulla ZMI della home del nostro portale e modificare “add portal members” deselezionando l'acquire e selezionandolo solo per il Manager.

Come risultato si ottiene che ad un Anonymous non apparirà più l'opzione di join.

Si può voler eliminare questa modalità.

Page 34: Introduzione al CMS a cura del dott. Ventre Antonello.

116. Plone e l’accessibilità

© Tecnoteca srl 2004

Plone aderisce agli standard web del Consorzio W3C

Rispetta la sintassi XHTML

Si basa su un CSS valido

E’ conforme alle Linee Guida WCAG 1.0 sviluppate dal Consorzio W3C/WAI

Presenta un layout senza tabelle

Utilizza fogli di stile per Stampa, Presentazione e Portatili (cellulari e palm)

E’ supportato da tutti i browser

Page 35: Introduzione al CMS a cura del dott. Ventre Antonello.

117. Documentazione e risorse disponibili pag.1

© Tecnoteca srl 2004

www.zope.orgil sito della comunità internazionale di ZOPE

www.zope.itil sito della comunità italiana di ZOPE

zdp.zope.org/Zope Documentation Project

www.zopemag.comuna autorevole newsletter su ZOPE

www.zope.org/Resources/ZopePoweredelenco di siti realizzati in Zope

www.python.orgPython

Page 36: Introduzione al CMS a cura del dott. Ventre Antonello.

118. Documentazione e risorse disponibili pag.2

© Tecnoteca srl 2004

www.plone.orgil sito della comunità internazionale di Plone

http://zope.it/Members/lallo/plone/pbithtml/index_htmlPlone Book in versione italiana

http://plone.org/about/siteselenco di siti realizzati in Plone

http://sourceforge.net/projects/ploneil progetto Plone presso SourceForge(tm)