[Dotclear] Include PHP file in Dotclear template
vendredi 3 septembre 2010
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 :
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
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.
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
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.