diff --git a/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/contributi-bglug.it.png b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/contributi-bglug.it.png new file mode 100644 index 0000000..63a2eec Binary files /dev/null and b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/contributi-bglug.it.png differ diff --git a/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/contributi-libreschool.org.png b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/contributi-libreschool.org.png new file mode 100644 index 0000000..d30cfe5 Binary files /dev/null and b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/contributi-libreschool.org.png differ diff --git a/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/hugo-logo-wide.png b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/hugo-logo-wide.png new file mode 100644 index 0000000..a848058 Binary files /dev/null and b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/hugo-logo-wide.png differ diff --git a/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/hugo-logo-wide.svg b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/hugo-logo-wide.svg new file mode 100644 index 0000000..1f6a79e --- /dev/null +++ b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/hugo-logo-wide.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/index.en.md b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/index.en.md new file mode 100644 index 0000000..3668b50 --- /dev/null +++ b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/index.en.md @@ -0,0 +1,16 @@ +--- +title: "Migrazione da Wordpress a Hugo" +date: 2024-09-09T07:50:41+02:00 +#expiryDate: # set this if the post should be removed automatically some time in the future +#publishDate: # set this if the post should be published automatically some time in the future +draft: false +slug: "2024-09-09-migrazione-wordpress-hugo" +type: post +image: wordpress-to-hugo.png # if you don't specify an image, the first available is used +image_alt: description of the featured image. The image ratio should be 360x250. +summary: If not present, the content will be used instead +tags: + - news +categories: + - News +--- \ No newline at end of file diff --git a/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/index.it.md b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/index.it.md new file mode 100644 index 0000000..ed3bb1a --- /dev/null +++ b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/index.it.md @@ -0,0 +1,65 @@ +--- +title: "Migrazione da Wordpress a Hugo" +date: 2024-09-08T10:50:41+02:00 +#expiryDate: # impostare se il post deve essere rimosso automaticamente nel futuro +#publishDate: # impostare se il post deve essere pubblicato automaticamente nel futuro +draft: false +slug: "2024-09-09-migrazione-wordpress-hugo" +type: post +image: wordpress-to-hugo.png # se non metti un'immagine, viene presa la prima immagine del post +image_alt: "Descrizione dell'immagine. Il ratio dell'immagine deve essere 360x250." +summary: Se non presente, usa il testo dell'articolo +tags: + - news +categories: + - News +--- + +Siamo lieti di annunciare che la migrazione da **Wordpress** a **Hugo** è giunta a termine, sia per questo sito web che per quello di libreschool.org, con la pubblicazione di questo sito. + +Questo progetto è il risultato di un lungo percorso iniziato a novembre dell'anno scorso, con il primo commit effettuato da Paolo Asperti il 26 novembre 2023 per il sito web [LibreSchool.org](https://libreschool.org), e concluso con la pubblicazione del nuovo sito web del bglug.it, avvenuta il 3 settembre 2024, durante la prima riunione serale del BGLUG dopo la pausa estiva. + +Questo risultato è stato reso possibile grazie all'impegno di diverse persone, ma il contributo principale è stato senza dubbio di **Paolo Asperti**, che si è occupato della parte tecnica. È importante anche menzionare **Omar Lazzari**, che ha dato un contributo rilevante nella gestione dei contenuti. + +![Contributi al sito libreschool.org secondo gitea](contributi-libreschool.org.png) +![Contributi al sito bglug.it secondo gitea](contributi-bglug.it.png) + +Durante la migrazione non sì è perso nulla. È stato utilizzato uno strumento per esportare gli articoli da WordPress e convertirli in "formato Hugo", con successivi aggiustamenti manuali. + +Il codice sorgente di entrambi i siti web è pubblico e disponibile [qui](https://git.libreschool.org/BgLUG/bglug.it) per BGLUG.it e [qui](https://git.libreschool.org/LibreSchool/libreschool.org) per LibreSchool.org. + +## Cos'è un generatore di siti web statici? + +Prima di parlare di Hugo, è importante capire cosa sia un generatore di siti web statici. +Un [generatore di siti web statici](https://en.wikipedia.org/wiki/Static_site_generator), o Static Site Generator (SSG), è un software che prende in input file testuali (ad esempio in formato markdown o rst) e genera un sito web composto da file HTML, CSS, JS, immagini e altri elementi, ma senza logica eseguibile lato server (come PHP o server REST). + +![Schema che mostra il funzionamento di un generico SSG. Viene mostrato come il generatore prende in input dei file template come head.html, footer.html e sidebar.html, dei file contenuti come contacts.md, home.md e product.md e produce in output un albero di file con dentro un file index.html e due directory contenenti rispettivamente ciascuno un file index.html](static-site-generator.png) + +## Cos'è Hugo? + +![Logo di hugo](hugo-logo-wide.png) + +[Hugo](https://gohugo.io/) è uno dei tanti SSG liberi presenti sul mercato, ed è probabilmente il più popolare. +È stato scelto per entrambi i nostri siti web web per la sua velocità, flessibilità e l'ampia disponibilità di temi. In particolare, abbiamo deciso di adottare il tema [hugo-arcana](https://themes.gohugo.io/themes/hugo-arcana/). + +Per noi, questo significa che ogni volta che dobbiamo modificare il sito web, come per creare un nuovo articolo, è sufficiente aggiornare i file dei contenuti seguendo le istruzioni della nostra [wiki](https://git.libreschool.org/BgLUG/bglug.it/wiki) e pubblicare le modifiche sul repository ufficiale del sito. Da lì, una serie di automazioni gestite da CI/CD di Gitea eseguono Hugo e caricano i file generati sul server web. Queste automazioni controllano anche che i contenuti siano fatti come sì deve e che non spacchino qualcosa. + +Uno dei vantaggi degli SSG è che permettono a terzi di proporre modifiche al sito web, purché queste vengano accettate da noi. + +## Perché abbiamo migrato da Wordpress a Hugo? + +[Wordpress](https://wordpress.com/it/) è il [sistema di gestione contenuti](https://it.wikipedia.org/wiki/Content_management_system) più popolare nonché il sistema che utilizzavamo prima della migrazione. Uno dei vantaggi di un CMS è la gestione dinamica dei contenuti, che possono cambiare durante la giornata o in base alle interazioni degli utenti. Permettono anche di gestire pagamenti, commenti e logiche avanzate per gli utenti. + +Tuttavia, questi vantaggi non erano rilevanti per noi. Invece, gli svantaggi di WordPress, come la necessità di aggiornamenti frequenti e maggiore manutenzione, tempi di caricamento più lenti e una maggiore superficie di attacco (PHP + WordPress), erano problematici. Avevamo riscontrato anche episodi di comparsi articoli non voluti. + +Queste sono state le principali ragioni per cui abbiamo scelto di migrare da WordPress a Hugo. + +## Vantaggi della migrazione a Hugo per il BGLUG + +La migrazione a Hugo ha portato numerosi vantaggi per il nostro team e la comunità del BGLUG, tra cui: +- **Maggiore velocità**: Il nuovo sito è notevolmente più veloce rispetto alla versione basata su wordpress, con tempi di caricamento molto ridotti. +- **Sicurezza migliorata**: Senza la necessità di gestire un backend complesso come PHP o database MySQL, la superficie d'attacco del sito è stata drasticamente ridotta. +- **Manutenzione semplificata**: Hugo richiede meno manutenzione, eliminando la necessità di continui aggiornamenti di plugin e temi. Possiamo essere relativamente sicuri che il sito web funzionerà perfettamente anche tra vent'anni +- **Archiviazione semplificata**: l'archiviazione è molto più semplice perché viene gratis con git. Tra dieci anni se vorremmo rivedere il vecchio sito basta andare indietro con `git checkout` e lanciare `hugo server`. + +Ci sarebbe anche il vantaggio dei costi minori in quanto l'hosting di un sito web statico costa notevolmente meno in quanto occupa relativamente poco spazio e può essere messo letteralmente ovunque, come su una CDN. Tuttavia a noi non è cambiato nulla perché continua a girare sullo stesso web server, ove sono presenti altri servizi. \ No newline at end of file diff --git a/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/static-site-generator.png b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/static-site-generator.png new file mode 100644 index 0000000..55a3c85 Binary files /dev/null and b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/static-site-generator.png differ diff --git a/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/wordpress-to-hugo.png b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/wordpress-to-hugo.png new file mode 100644 index 0000000..178a8e2 Binary files /dev/null and b/content/posts/2024/2024-09-09-migrazione-wordpress-hugo/wordpress-to-hugo.png differ