Creare pagine con il CMS Grav

Creare pagine con il CMS Grav

Così come anticipato nel precedente articolo dedicato all’introduzione su Grav CMS File Flat.

Vediamo nel dettaglio come dobbiamo procedere e qualche accorgimento che ci farà risparmiare tempo prezioso.
Premesso che Grav nativamente vi consente di utilizzare tre tipologie di pagine:

  • Standard o pagina normale
  • Listing o pagina vista lista
  • Modular o pagina modulare

Vi ho già parlato del pannello di controllo, qui tra le varie voci troverete “Pagine”, cliccando sulla voce verrete condotti alla sezione destinata alla gestione e creazione delle pagine.
Potrete notare sul lato destro l’elenco delle pagine e le icone per la visualizzazione o per la rimozione.
Nella parte inferiore la “Legenda di pagine” ove presenti le selezioni per lo stato delle o della pagina.

Prima di procedere e se da verifica non risultasse installato, dovrete installare ed attivare il plugin TinyMCE, avrete così un editor più vicino a quelli che avete sempre usato e che vi renderà la scrittura delle vostre pagine più semplice.
Per scaricare il plugin potete seguire queste fonti:

Adesso siamo pronti per iniziare a scrivere la nostra prima pagina…

Non ancora!

Due premesse importanti, Grav non dispone del salvataggio pagine in automatico e al salvataggio ci ritroveremo comunque a capo della pagina, suggerisco il salvataggio frequente o la copia del testo da nostro editor in locale.

Se avete di fronte la prima installazione vi troverete di default due pagine:

  • Home
  • Typography

Non le rimuovete, potrebbero servirvi come esempio per la compilazione delle vostre nuove pagine e potranno essere rimosse in seguito.

Come è strutturata la pagina?

Ad ogni pagina corrisponde un folder che potrete vedere da FTP o dal vostro file manager nel percorso: root/user/pages/01.home o 02.typography.

Se aprite il folder della pagina di vostro interesse troverete il file default.md
Nello stesso folder verranno caricate le immagini che utilizzerete nella vostra pagina.
Ogni pagina sarà sempre associata a suo folder.
Eventuali pagine figlie risiederanno all’interno del folder delle pagine genitore.

Durante la creazione della pagina potrete scegliere per la creazione di uno dei tre moduli di default:

  • Features
  • Showcase
  • Text

Vedremo successivamente e nel dettaglio l’utilizzo collegato alla pagina modulare.

Andiamo a creare la nostra pagina cliccando sul tasto in alto a destra “+ Aggiungi”

La finestra che ci appare va compilata indicando:

  • Titolo della pagina
  • Il nome della cartella si compila in automatico
  • Root, decidiamo se una pagina genitore o una pagina figlia
  • Scegliamo tra i vari formati di pagina, per iniziare va bene “Default”.

Contenuto

Bene, siamo ora di fronte all’editor e possiamo dedicarci a scrivere così come faremmo con qualunque editor di testo.
L’editor è completo e vi offre ogni strumento adeguato per una corretta formattazione e visualizzazione della pagina.

Inserimento delle immagini nella pagina

Certamente vi verrà il desiderio o la necessità di inserire un’immagine in una specifica posizione.
La prima spontanea azione è cliccare sull’icona insert/edit image o insert/edit media presenti sui comandi dell’editor.
Otterrete in risposta una finestra pop-up che vi chiede il percorso o l’url di dove si trova l’immagine, la descrizione e le dimensioni.
Immagino che salvo avere tutto pronto sia una bella seccatura.

Dunque, abbiamo salvato la nostra pagina e abbiamo visto apparire sotto la sezione editor l’area per il drag and drop dell’immagine o la possibilità cliccandoci sopra di caricare l’immagine dal nostro dispositivo.

Trasciniamo o carichiamo l’immagine.

Nell’anteprima dell’immagine che ora troveremo nella parte inferiore dell’editor potremmo notare che sono presenti 4 icone:

  • Inserisci
  • Info
  • Metadati
  • Cestina

Selezioniamo con il cursore il punto della pagina in cui vogliamo l’immagine.
Clicchiamo sul simbolo “+” Inserisci e ci troveremo la solita finestra pop-up che dovremmo ora compilare con la descrizione immagine e le dimensioni volute.
Se le dimensioni non sono di nostro gradimento possiamo trascinare l’immagine anche se già nell’area dell’editor sino a portarla alle dimensioni desiderate.

Abbiamo finito, no!

Avrete notato che nell’area di creazione della pagina, nell’area superiore sono presenti 3 campi principali:

  • Contenuto
  • Opzioni
  • Avanzato

Opzioni

Il campo Contenuto lo abbiamo già compilato, ora vedremo la compilazione del campo “Opzioni”

Abbiamo due aree:

  • Pubblicazione
  • Tassonomie

Su pubblicazione troveremo:

  • Pubblicato
  • Data pubblicazione
  • Data di rimozione di pubblicazione
  • Metadati

Nell’area Tassonomie:

  • Categorie
  • Tag

Salvo differenti e possibili esigenze possiamo limitarci a compilare solo i campi “Metadati” inserendo chiave e valore, nella sezione Tassonomie inseriremo Categorie e Tag.

Avanzato

Il campo “Avanzato” è sicuramente quello più complesso nell’apparenza.
Sono presenti diverse aree:

  • Settaggi
  • Ordinamento
  • Sovrascrittura
  • Override della route
  • Override specifici per l’Admin

Basiamoci per il momento solo su due campi: Settaggi e Ordinamento.

Settaggi

  • Nome Cartella
  • Superiore, indica che gerarchia di pagina, se pagina genitore o figlia, di default sarà /(root)–>> Pagina Genitore
  • Modello di pagina, ad esempio: Default, Particle, Blog item, Blog list, ecc ecc.
  • Classi del tag body

Ordinamento

In questa sezione possiamo verificare l’ordinamento delle pagine.

Abbiamo la possibilità di vedere l’anteprima della pagina creata sulla stessa scheda del browser o selezionare la vista su un’altra scheda.

Non ci resta che salvare la pagina e vedere i risultati.

Grav CMS File Flat

Grav è un CMS File Flat

Quando parliamo di CMS acronimo di Content Management System e sistema di gestione dei contenuti, visualizziamo per ovvie ragioni di diffusione quelli tra i più noti: WordPress e Joomla.

Sappiamo bene che la creazione dei CMS agevola la realizzazione di siti web svincolando in buona parte l’esecutore dalla profonda conoscenza dei principali linguaggi di programmazione e rendendo i CMS alla portata di tutti sul piano di gestione e funzionamento.
L’elevata usabilità e la vastissima documentazione forniscono anche ai più profani una buona base di partenza per l’utilizzo, che si tratti di un Blog o di un sito Aziendale è possibile gestirne i contenuti senza grosse difficoltà.

Con questa premessa sia chiaro che non intendo promuovere la creazione autonoma di siti asserendo che non servano basi di conoscenza dei principali linguaggi, palese che in caso di customizzazioni, errori o modifiche importanti sarà bene conoscere almeno qualche nozione di PHP, CSS e Javascript oltre a maturata esperienza per gestire alcune condizioni particolari riscontrabili durante la fase pre e post produzione del sito web.

Tralasciando questo aspetto che riprenderò più avanti, torniamo a parlare di usabilità dei CMS.

Il punto di forza è sicuramente la capacità di espanderne le funzioni grazie all’infinità disponibilità di plugins e componenti.
La semplicità nel gestire e pubblicare contenuti testuali e multimediali e la possibilità di tenere tutto sotto pieno controllo sempre che si rispettino le linee guida del CMS.
Altro aspetto è la frequenza degli aggiornamenti, segno di un team di sviluppo produttivo e attivo, che garantisce sempre una piena funzionalità dei CMS in linea con la sicurezza e le esigenze più avanzate.
Joomla e WordPress ormai rappresentano le piattaforme più utilizzate sia per la realizzazione di semplici Blog personali, per E-commerce, siti Aziendali, magazine, siti per strutture turistiche ecc ecc.

La loro forza sta anche nell’utilizzo del o dei database MySql e nella capcità di archiviare e gestire i dati dando risposta quando interrogati.

Anni fa utilizzai WordPress senza database MySql, ma con il plugin SQLite Integration successore del plugin PDO, plugin ormai abbandonato da circa 4 anni.
Ottenni un buon risultato in termini di funzionalità e velocità riferiti ad un sito con attivo un blog e altre sezioni come portfolio, contatti, mappe, video ecc ecc .

Cosa si intende per CMS File Flat: è una piattaforma che non richiede un database, ma salva i dati su una serie di file di testo.

Non sempre la scelta di un CMS con database MySql è la soluzione migliore.

Arriviamo dunque a Grav CMS File Flat.

Piena potenza e velocità, si può riassumere così il CMS Grav.

La mia esperienza con il CMS Grav risale a qualche anno fa, da allora oltre che diversi siti realizzati ne ho sempre tenuto una versione in locale per test e per seguirne lo sviluppo.

Premesso che la curva di apprendimento è piuttosto modesta rispetto ad altri CMS e riferendomi a chi già lavora nel settore.

Per un profano la curva di apprendimento potrebbe essere elevata, salvo trovarsi già tutto configurato e preoccuparsi solo di creare pagina, stabilire la gerarchia e inserire contenuti testuali e media.

Cos’è Grav?

Grav’s Place in the Universe

There are many powerful open source CMS solutions for building complex websites.
Some of the more commonly used ones are Joomla, WordPress, and Drupal.
The downside of these platforms is that they have a steep learning curve associated with them.
This requires a significant amount of your time – and this may be the time that you do not have.

These platforms provide a wealth of features and functionality that you can extend with a wide variety of open source and proprietary plug-ins and themes.
These extensions and themes are themselves often feature-packed, requiring more knowledge and time on the part of the developer yet.

In the end, you often find yourself creating a website that requires many plugins and extensions from many different vendors. This can make your design overly complicated and difficult to maintain over the long term.

Grav tackles the problem differently.
It focuses primarily on your content and turns your content structure into a navigable site.
The underpinnings of Grav are simple, yet via extensive events, you have complete control over every step in the Grav workflow.

This solution allows simple plugins to quickly and easily add powerful functionality.
Using Grav also leads to a rapid development environment with an installation process that takes seconds, including a straightforward content creation method with a minimal learning curve.
All of this contributes to making Grav friendly to the designer, the developer, and the end user.

To get a basic site up-and-running requires minimal Web development experience. If you dig a little deeper, you will discover that there is very little Grav cannot accomplish.

Fonte: learn.getgrav.org

Il nome del CMS Grav è l’abbreviazione di Gravity.

Del Core team di sviluppo fanno parte oltre che Andy Miller e Matias Griese anche l’Italiano: Djamil Legato.

Grav è una piattaforma Web veloce , semplice e flessibile, attualmente è disponibile la versione 1.6.3 rilasciata pochi giorni fa.
Zero requisiti per l’installazione.
Significa che un semplicissimo spazio web senza database può ospitare tranquillamente Grav.

Sebbene Grav segua principi simili ad altre piattaforme CMS flat-file, ha una filosofia di design diversa dalla maggior parte di questi.

Cosa c’è sotto il “cofano” di Grav?

Iniziare ad utilizzare Grav

Installazione di Grav

  • Scaricate SOLO dal sito ufficiale l’ultima versione, disponibile all’indirizzo: https://getgrav.org/downloads
  • Estraete il file contenuti nella cartella Zip e caricate nel vostro spazio web o nella htdocs in locale se usate Xampp
  • Se dovete utilizzarlo sulla webroot principale del vostro sito trasferite l’intera cartella che contiene file nascosti come .htaccess
  • Digitate l’indirizzo del vostro sito
  • Sarete portati nella schermata dove inserire i dati di configurazione sito, 2 minuti e siete dentro il pannello di Grav

Il pannello di controllo

Il pannello di controllo è di aspetto gradevole con tutte le funzioni ben visibili, 10 comandi sono raccolti nella barra sinistra che si può espandere o collassare.
Nella parte superiore è presente un messaggio di sistema, vi indicherà che il login è correttamente eseguito, segnalerà eventuali anomalie, errori o update da eseguire.

In evidenza due sezioni:

  • Manutenzione, mostra se tutto è aggiornato o eventuali aggiornamenti da eseguire, il dettaglio dei backup eseguiti.
  • Statistiche

Nella parte sottostante altre due sezioni:

  • Notifiche relative a note e info
  • Notizie dal team di Grav su update, plugin, avvisi di sicurezza ecc ecc.

Infine  troviamo una sezione dove vi è la cronologia delle ultime modifiche eseguite sulle pagine, la lista delle pagine modificate, le date e il pulsante che riporta alla gestione pagine.

Comandi sul pannello di controllo barra laterale:

  • Avatar e gestione del profilo, sezione importante sia per l’inserimento dei dati che per la scelta della lingua, salvo non vi serva un sito multilingua non toccate altro. La sezione language sito la vedremo più avanti.
  • Due icone, una con simbolo del cestino che vi serve per svuotare la cache e una per aggiunta di plugin.
  • Impostazioni, vi farà accedere a: sistema, sito, media, security, info.
  • Pagine/gestione pagine
  • Plugins
  • Temi
  • Strumenti
  • Logout

Creazione delle pagine

Premesso che seppure apparentemente semplicissimo, non lo è affatto se non si studia almeno la struttura delle eventuali pagine presenti di default all’avvio di Grav.
In un altro articolo tratterò nel dettaglio la creazione di pagine e le gerarchie comprese tutte le varie funzioni legate a: opzioni e avanzato.
Di default alcune funzioni della pagina sono disattivate ed alcune impostate già correttamente.

  • Spostiamoci sulla nostra barra dei comandi presente sul pannello di controllo e clicchiamo su “pagine
  • Siamo nella sezione gestione pagine da cui potremmo aggiungere o rimuovere le pagine
  • “Indietro” e “aggiungi” sono i pulsanti visibili nella parte superiore, il pulsante “aggiungi svolge più funzioni.
  • Clicchiamo su aggiungi pagina

Ci apparirà una finestra con presenti più voci da compilare:

  • Titolo della pagina
  • Nome cartella, univoco al nome pagina, si compilerà automaticamente e il relativo folder così come il file avranno lo stesso nome, a riguardo approfondirò l’argomento nel caso decidessimo di modificare il nome pagina lasciando invariato il nome del folder.
  • Pagina superiore, di default troverete /root, potrete selezionare altra pagina genitore nel caso di Blog o altra pagina principale già creata in precedenza.
  • Modello di pagina, una lista dei formati/modelli disponibili, potrete lasciare “default” e modificare successivamente.
  • Criteri di pubblicazione, lasciate in “Auto, o selezionate una delle altre due voci a scelta. “Si” o “No”.

Se abbiamo fatto tutto correttamente ci troveremo nella schermata “Contenuto” dove è presente l’editor.

Questa area è suddivisa in 4 sezioni principali, una visibile sono dopo il salvataggio della pagina.

  • Contenuto
  • Opzioni
  • Avanzato
  • Caricamento media da inserire nella pagina, solo dopo il salvataggio.

La pagina ha due funzioni aggiuntive:

  • Normale
  • Esperto

Inseriamo il nostro testo e salviamo la pagina, la schermata sarà identica e vi apparirà solo il messaggio: “Salvata con successo”.

Gestione dei media con Grav

Adesso possiamo visualizzare nella parte sotto l’editor che è presente una sezione per eseguire il caricamento o drag and drop dell’immagine che vogliamo sia presente nella pagina.
Clicchiamo sulla sezione e selezioniamo l’immagine dal nostro dispositivo.
L’immagine ora presente nella parte inferiore non è ancora inserita nella pagina.
Passando il cursore sulla pagina potremmo vedere che ci sono diverse icone:

  • Vista immagine
  • Info immagine
  • Cancellazione immagine
  • segno “+” aggiunta dell’immagine.

Selezioniamo la posizione sulla pagina, clicchiamo sul simbolo “+” e avremmo la nostra immagine presente nella pagina e nella posizione desiderata.
Il dimensionamento dell’immagine potrà avvenire prima o direttamente trascinando le estremità una volta che abbiamo l’immagine nella pagina.

Possiamo salvare di nuovo e vedere l’anteprima della nostra prima pagina  creata con il CMS Grav.

Vedi Grav in azione su un sito base