[Dotclear] Include PHP file in Dotclear template

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!


Commentaires

1. Commentaire de Lomalarch le dimanche 25 septembre 2011

Bonjour,

la façon la plus simple d’insérer du php dans un template Dotclear, sans altérer le code source, consiste tout de même à positionner à « oui » le sélecteur tpl_allow_php dans l’extension about:config livrée avec Dotclear.

Quant au _public.php, c’est une bonne technique pour, par exemple, créer des balises de template et autres comportements personnalisés mais pas pour activer ou pas le php dans lesdits templates ;-)

Bonne journée.

2. Commentaire de Ted le samedi 1 octobre 2011

Bonjour,

Je suis d'accord avec vous concernant le fait de ne pas modifier le fichier source quand il existe une option pour désactiver ce comportement.

Mais dans l'optique où je ne me servirais jamais de cette fonctionnalité, la désactiver permet aussi de ne pas executer de code inutilisé.

Bonne journée à vous aussi :)

3. Commentaire de lunettes carrera le vendredi 11 janvier 2013

Bonjour, j`ai beaucoup aimé votre post. Je ne suis pas spécialiste dans la matière, avez-vous d`autres articles sur le même sujet ?
Continuez ainsi, c`est toujours un plaisir de lire vos articles !

Elise.


About the Author

Ted Marklor est un web designer, un web developer et un génie de la nature. Transcendant le web depuis bientôt 15 ans, Ted est une source d’inspiration et de conseil pour toute une génération de jeunes programmeurs. Le Web 2.0, c’est lui. Dans la vie, il aime aussi faire des avions en papier, s’inventer des pseudonymes et une vie de winner, et surtout parler de lui à la troisième personne. Ça se fait en ce moment sur les blogs…


Ajouter un commentaire

Le code HTML est affiché comme du texte et les adresses web sont automatiquement transformées.