Comme chacun sait, les cordonniers sont toujours les plus mal chaussés et je n’échappais pas à la règle à tel point que j’avais passé le mien en mode maintenance depuis un certain temps.

Aujourd’hui le mal est réparé, je termine ma nouvelle version avec forcément quelques modifications techniques en plus d’une refonte graphique complète.

Pour commencer, je suis passé sur WordPress, et oui comme tout le monde… Même si mon ancienne version avec back office maison me remplissait de fierté, le maintenir et l’améliorer prenait bien trop de temps et je ne pouvais raisonablement pas continuer à vanter les mérites du CMS en général et ne pas montrer l’exemple.

Le problème avec WordPress c’est l’organisation du code. Il ne renferme aucun framework de templating, il n’y donc aucune séparation entre le traitement et l’affichage de l’information et encore moins de méthodologie ou architecture à respecter.

Autrement dit on peut concevoir un thème de façon clair et structuré ou fabriquer un gros sac de nœuds, les deux seront susceptibles de fonctionner, surtout le premier.

J’ai donc choisi d’utiliser Timber, installé sous forme d’une dépendance au sein de mon thème. Il permet de mieux structurer son code en fournissant des alternatives objet à bon nombres des fonctions globales de WordPress et pour parfaire le tout, embarque le moteur de templating Twig. Les bénéfices : un code plus propre et facilement maintenable tendant vers le modèle MVC.

Pour ceux qui voudraient tester, Timber est disponible en plugin, mais le mieux reste encore de copier le « starter thème » dédié dans votre dossier de thème, puis si ce n’est déjà fait d’installer composer qui va permettre d’ajouter automatiquement toutes les dépendances nécessaires au fonctionnement de Timber.

Pour cela il suffit d’utiliser votre console de commande préférée, se placer à la racine du thème puis lancer l’installation de Timber avec un simple :

composer install

Ce thème de démarrage est une bonne base pour comprendre le fonctionnement du framework et ainsi construire son propre thème.