99 lines
3.2 KiB
Markdown
99 lines
3.2 KiB
Markdown
# PELICAN WEBSITE HOWTO
|
|
|
|
## pelicanconf.py:
|
|
|
|
in questo file si definiscono un tot di cose, tra cui:
|
|
|
|
i contenuti stanno nella cartella "content", vengono scritti in markdown e sono di due tipi:
|
|
|
|
- pagine statiche (nella sottocartella "pages")
|
|
- articoli tipo blog (nella sottocartella "blog")
|
|
|
|
una volta elaborati sono salvati nella cartella "output" che e' quella
|
|
che conterrà i files .html del sito vero e proprio
|
|
|
|
in testa ai files .md devono essere definiti dei metadati:
|
|
|
|
per le pagine statiche:
|
|
|
|
- Title (il titolo che poi compare a video nella pagina finale html)
|
|
- Slug (il nome con cui la pagina sara' salvata nella cartella output)
|
|
|
|
ad es. index.md ha un Save_as: index.html che fa override della direttiva PAGE_SAVE_AS
|
|
e permette di salvare la pagina come index.html nella root invece che nella sottocartella index
|
|
|
|
per gli articoli ad es.:
|
|
|
|
- Title: Comunicato Unit hacklab su annuncio sgombero Macao
|
|
- Author: Unit
|
|
- Category: comunicato
|
|
- Date: 2018-09-26
|
|
- Tags: sgombero
|
|
|
|
nella cartella output le pagine sono salvate nella sottocartella nome_pagina/index.html
|
|
(direttiva PAGE_SAVE_AS)
|
|
si possono fare eccezioni a questo, ad esempio la pagina index non puo' finire in index/index.html,
|
|
quindi si definisce il metadato Save_as che fa override di PAGE_SAVE_AS e definisce come salvare la pagina,
|
|
in questo caso specificando index.html finisce nella root (stessa cosa si fa per la pagina 404.md)
|
|
|
|
gli articoli invece vengono salvati nella cartella blog (direttiva ARTICLE_SAVE_AS)
|
|
|
|
gli articoli finiscono nel feed rss, le pagine no, quindi se si crea una pagina
|
|
e' bene fare anche un articolo che la "presenti".
|
|
|
|
|
|
il tema usato e' "minimo" di dan ed e' definito come submodule di git
|
|
|
|
quindi ora per clonare il repository:
|
|
|
|
> git clone --recursive (--recursive per fare anche il clone dei submodules)
|
|
|
|
> git submodule update --init
|
|
|
|
per lavorare sul repository, fare pull e aggiornare anche il submodulo:
|
|
|
|
> git pull --recurse-submodules
|
|
|
|
> git submodule update --remote
|
|
|
|
se il submodule contiene degli aggiornamenti, bisogna committarli nel repository del sito:
|
|
|
|
> git add theme/minimo
|
|
|
|
> git commit -m "aggiornato tema"
|
|
|
|
> git push
|
|
|
|
|
|
in cima alla pagina c'e' un piccolo menu con poche voci:
|
|
|
|
- HOME (index)
|
|
- BLOG (lista degli articoli con anteprima (articles.html), volendo ci sarebbe anche la pagina archives.html che contiene la lista degli articoli ma senza anteprima.
|
|
- CATEGORIE (lista delle categorie degli articoli, cliccabile)
|
|
- TAG (lista dei tag degli articoli, cliccabile)
|
|
- CONTATTI (pagina che riporta i contatti)
|
|
- RSS (link al feed rss (atom))
|
|
|
|
ci sono due cartelle statiche:
|
|
|
|
- media (che contiene i materiali delle pagine, pdf, immagini etc.)
|
|
- images (che contiene le immagini della struttura del sito, al momento solo il logo))
|
|
|
|
|
|
|
|
## publishconf.py
|
|
|
|
questo file definisce solo il SITEURL in produzione e l'indirizzo dei feed rss e atom creati
|
|
(quando sostituiremo il sito perderemo tutti i feed precedenti, a meno di creare degli articoli nel blog,
|
|
pero' poi mi sa che chi ha sottoscritto il feed li ricevera' di nuovo.... ?
|
|
per or
|
|
|
|
|
|
## Makefile
|
|
|
|
e' il makefile standard con le istruzioni per SSH per caricare il sito
|
|
e un nuovo comando "production" per copiare il sito al suo posto
|
|
(ma funziona solo se viene lanciato da zaphoda)
|
|
|
|
|