Vous n'êtes pas identifié(e).
13 février 2024 Sortie de Dotclear 2.29
Bonjour aux chefs,
En lisant la documentation pour {{tpl:include}}, me vient l'idée saugrenue de demander : est-il possible de préciser un chemin hors du dossier tpl/ ?
Par exemple {{tpl:include src="../../commun/_footer.html"}} ?
Merci :)
Hors ligne
Merci pour ta réponse, mais à priori, tu vois un chemin pour revenir jusqu'au dossier parent themes/ ?
J'ai essayé :
{{tpl:include src="../themes/dcLMDT/tpl/_top.html"}}
{{tpl:include src="../../themes/dcLMDT/tpl/_top.html"}}
{{tpl:include src="../../../themes/dcLMDT/tpl/_top.html"}}
mais sans succès :(
Hors ligne
Il est donc impossible d'aller rechercher un fichier .html dans un autre dossier themes/mon_theme/ ?
Comment contourner cette limite ?
J'ai essayé avec un include en php (en activant tpl_allow_php) mais les balises de Dotclear ne sont pas lues...
Merci par avance ;)
Hors ligne
Il est donc impossible d'aller rechercher un fichier .html dans un autre dossier themes/mon_theme/ ?
Sauf si le thème qui inclut le fichier est un enfant du thème dans lequel se trouve physiquement ce fichier...
Pour contourner cela, tu pourrais peut-être utiliser le plugin Pages connexes (related) qui permet aussi d'inclure des fichiers de template, a priori placés n'importe où ;)
Hors ligne
Pages connexes ne répond pas à mes besoins :)
J'ai créé un multi-blogs avec des besoins de templating particuliers pour chaque blog de l'installation (plusieurs home.html, post.html, etc...).
Mais j'ai besoin d'inclure des gabarits communs (_footer.html, _head.html et _top.html) à chaque thème de blog. Sinon c'est le merdier...
Quelqu'un qui a une idée ? :)
Hors ligne
Un thème parent avec les fichiers html communs, et un thème enfant par blog ensuite ?
Hors ligne
Beaucoup de gymnastique car j'utilise mon thème dcBootstrap comme base et des thèmes enfants pour chaque blog. Je ne veux pas toucher à dcBoostrap en vue des futures mises à jour du thème :)
Hors ligne
Donc dcBootstrap comme thème parent et un thème enfant de dcBootstrap pour chacun des blogs, je vois pas trop l'empêchement.
Sinon tu peux toujours développer ta propre balise tpl:DeepInclude basée sur la standard et qui n'empêche pas de remonter dans l'arbo.
Dotclear addicted since 2004
Hors ligne
Donc dcBootstrap comme thème parent et un thème enfant de dcBootstrap pour chacun des blogs, je vois pas trop l'empêchement.
L'empêchement, c'est que mon _footer.html n'est pas celui de dcBootstrap mais celui d'un thème enfant justement.
Sinon tu peux toujours développer ta propre balise tpl:DeepInclude basée sur la standard et qui n'empêche pas de remonter dans l'arbo.
T'oublie mon incompétence là :(
Hors ligne
Si un volontaire / j'ai-5-minutes-à-perdre-pour-ta-poire / développeur / PHPiste passe par là... Hein, z'a'tout'hasard :)
Hors ligne
Sinon tu peux toujours développer ta propre balise tpl:DeepInclude basée sur la standard et qui n'empêche pas de remonter dans l'arbo.
Attention à la sécu quand même, sinon moi j'inclus /inc/config.php dans mes templates :)
Dyslexics have more fnu!
Hors ligne
Oui... oui... mais mon allergie à PHP fait que je suis incapable de développer cette balise quoi qu'il arrive :(
Hors ligne
Ca fait plus d'une heure que j'essaye de contourner la sécurité de dotclear pour voir ce qui est faisable. En vain. Le seul moyen de contourner le truc est de modifier la class dcTemplate ou (mieux) la class template de clearbricks.
Est-ce qu'il y a des template tags dans ton __footer.html ? Si oui, c'est mort. Si non, on peut bricoler un truc.
Hors ligne
Qu'entends-tu par template tags ? Des balises propres à Dotclear ?
(Si c'est bien ça, oui il y en a un certains nombres...)
Hors ligne
C'est ça (j'ai du mal). Les balises dotclear. A moins de modifier le coeur je ne vois pas (à peine une 10aine de lignes). Mais tu risques de t'embêter avec un patch à appliquer à chaque nouvelle version. La sécurité n'est pas un vain mot sur Dotclear ;)
En plus on bute en permanence sur les limitations de PHP. Impossible d'étendre à la volée un objet (ce qui serait la solution). SI tu y tiens, je te le fais, mais ce sera à la main à chaque fois. Je ne pense pas que la core team autorise un patch qui puisse potentiellement affaiblir la sécurité.
Hors ligne
Ne t'embête pas, je n'aurais pas le courage / pas la mémoire de me rappeler à chaque mise à jour d'appliquer une modification du core Dotclear.
La solution d'un tpl:DeepInclude est donc inenvisageable ? (Je précise que je suis seul à gérer la partie thèmes, donc pas de risque de sécurité à priori, non ?)
Hors ligne
Ca me tracasse cette histoire. Je vais chercher demain. Il est tard et j'ai une vie après l'ordi. Si si je t'assure ;) (il est 21:30 pour moi).
Hors ligne
Vous n'êtes pas identifié(e).