Layout
Panoramica
I layout permettono di associare una grafica diversa da quella di page_generic.html o di page_news.html. Possono essere creati infiniti layout, distinti tra quelli per le pagine generiche e quelli delle news. Per associare un layout a una pagina è possibile farlo modificandola dal pannello dove nel campo Layout comparirà la lista di quelli impostati.
Implementazione
Creare un layout
Per creare un layout bisogna prima di tutto inserire un file nella Cartella Layouts con il nome scelto. Questo file verrà caricato al posto di page_generic.html, per questo in genere avrà come intestazione l'estensione {% extends 'page_generic' %}
seguito dal resto delle modifiche grafiche.
Una volta creata la view è necessario fare in modo che questa sia selezionabile per l'utente dal pannello. Inseriamo quindi in theme.php nell'oggetto layouts
il nome del file, associato al riferimento al nome in lingua del template.
Ad esempio qui creiamo un layout chiamato "portfolio" per le pagine generiche.
'layouts' => [ 'generic' => [ 'layouts.portfolio' => 'theme::common.layouts.generic.portfolio', ], ],
Il layout è ora creato e funzionante, ma bisogna dargli un nome. Per fare questo modifichiamo i file common.php delle varie lingue attive, ed aggiungiamolo all'oggetto layout, in questo modo:
'layouts' => [ 'generic' => [ 'portfolio' => 'Layout per il portfolio', ], ],
A questo punto possiamo associare il Layout alle pagine desiderate. Per creare un layout per le news è sufficiente sostituire in questo oggetto generic
con news
.