Voilà un petit moment que je cherche une solution pour pouvoir simplement inclure un bout de code PHP dans un template Dotclear. Mais avec Dotclear, ce n’est pas si simple…

Au lieu de choisir un format standard (comme Smarty), les développeurs de Dotclear ont préféré créer leur propre syntaxe de template. Sans être aussi chiant que celle de Spip, la syntaxe de Dotclear essaye tellement de simplifier les choses que cela complique les choses les plus simples… Et c’est une des bonnes raisons qui ont fait que Dotclear est aujourd’hui en train de disparaitre face à des concurrents plus “open” comme Wordpress.

Donc, pour réussir à lancer le moindre code PHP depuis un template Dotclear, plusieurs solutions existent sur le Net. La plus répandue conciste à ajouter un fichier _public.php à la racine du répertoire du theme. Chez moi, pas moyen de faire fonctionner ce truc. Il y aurait aussi une simple manip’ à faire dans le backoffice, mais encore une fois pas moyen de la trouver… problème de version certainement.

Bref! Voici une petite astuce qui marche à tous les coups, et qui va en plus alléger légerement le temps de traitement du template.

Editez le fichier /inc/clearbricks/template/class.template.php à la ligne 225, et mettez en commentaires les lignes suivantes :

dotclear-template-include-php-hack.jpg

Et voilà, bye bye la suppression des tags PHP dans les templates! Désormais, pour inclure du code PHP dans vos templates, vous n’avez plus qu’à ouvrir avec le tag <?php et à fermer avec ?> le plus simplement du monde!