Les choses ne se passent pas toujours comme on le souhaite… Mais c’est pas grave !

Comme tu as pu le remarquer, les choses n’ont pas tout-à-fait le même aspect depuis quelques jours : je suis en effet passé d’un blog Dotclear à un site statique généré par Zola.

Les sites statiques en fait, c’est bien

Cela faisait déjà quelques temps que je gérais l’ensemble des articles en Markdown plutôt qu’avec le système d’éditeur Wiki de Dotclear ou en HTML brut (ce que j’ai fait pendant quelques temps d’ailleurs aussi…). Et il se trouve que le plugin Markdown pour Dotclear est loin de donner satisfaction :

  • les commentaires ne marchaient pas
  • écrire du code était toujours une galère entre ce qu’on pouvait échapper, ce qu’on ne pouvait pas échapper, ce qu’il fallait absolument échapper

Ça m’a donc donné envie de prendre une autre direction et vu le peu d’activité, maintenir un blog complet en PHP est en fait assez lourd : je me suis retrouvé à un moment à avoir plus de mises à jour à faire sur le site que d’articles dans les brouillons (et pourtant, il y en a plein des articles dans les brouillons !!).

Là, je peux écrire nativement mon article dans vi, tout en étant certain que Zola s’occupera de tout nativement : les espaces insécables sont pris en compte, le code est correctement mis en valeur, les images sont redimenssionnées à la volée, etc…

En terme de ressource, c’est une sacrée économie : moins de processus PHP à faire tourner, une base de données en moins sur le serveur (évidemment, comme j’ai plein de bordels qui tournent à côté de cela, ce n’est pas ultra significatif non plus, mais bon, c’est toujours ça de pris).

Et surtout, la tranquilité : plus besoin de se prendre la tête avec les questions de mise à jour de sécurité, plus de crainte qu’un mot de passe fuite, qu’une page soit attaquée, etc…

Et du coup, ça se passe comment en fait ?

C’est en réalité assez simple. La commande zola init permet de créer l’ensemble des répertoires nécessaires au bon fonctionnement du blog. Il suffit alors d’ajouter les fichiers Markdown dans les répertoires content/ et le tour est joué ! Il y a évidemment quelques subtibilités supplémentaires, mais guère plus : ajouter un thème, voir comment on trie les articles et c’est à peu près tout !

Une fois, les premiers articles écrits (ou importés manuellement depuis d’autres sources), on peut très facilement visualiser le résultat avec la commande zola serve. Elle crée un petit serveur HTTP local qui permet d’aller surfer sur le blog comme si on y était (à une exception près : les flux RSS sont complètement pétés, ce qui m’a fait me gratter la tête pendant un bon moment).

Quand on est satisfait du résultat (et en fait, ça consiste essentiellement à savoir si le thème colle bien, les dates sont bonnes et qu’on n’a pas fait d’erreur de syntaxe niveau Markdown), on peut brutalement compiler le site via zola build et à ce moment le répertoire public/ devient le site près à être téléversé sur ton serveur.

Et voilà comme disent nos camarades anglophones…

Mais tu perds les commentaires quand même dans l’opération…

Oui. Et je me rends bien compte que c’est un peu dommage : pouvoir réagir de suite et directement auprès de l’auteur d’un article est quelque chose que je trouve important. Mais comme pour le reste : vu le peu de commentaires que je reçois en réalité, c’est largement plus rentable pour moi de laisser tomber. Si tu as des remarques à me faire, tu trouveras certainement un moyen de me contacter d’une manière ou d’une autre. Au pire, je ferai peut-être une page de contact statique, si je trouve le courage de la faire un jour.

Sinon, et bien, ça restera comme ça et c’est pas bien grave. Je peux toujours écrire des conneries, me faire des pense-bêtes personnels ou parler de sujet qui me tiennent à cœur. Et c’est là, le plus important.