Permettre au plugin de fournir leur propre template
Publié : 04 août 2020, 15:08
J'ai besoin de concevoir un plugin qui doit disposer de ces propres templates twigs.
Pour cela je ne souhaite pas ajouter les pages du plugin directement dans le sous dossier base des templates mais qu'il puisse disposer de sons propre sous dossier de template comme pour les modules.
Je pense adapter la méthode msGetHtml::_construcDefaultTemplatesDirectories() pour cela.
Y aurait il d’éventuels problèmes à prendre en compte en faisant cela ?
Je me demande aussi comment gérer au mieux la priorité des templates. Doivent ils être prioritaire sur les templates de modules ? Comment on peut gérer les priorités entres plusieurs plugin qui proposerai des templates avec le même nom ?
Autres problème, comment permettre aux plugins d'ajouter des entrées dans la Navbar. J'aurai imaginé ajouter des includes conditionnels ajouté dans pageTopNavbar.html.twid avec des élément issue d'un array que les plugins pourrai chacun remplir à partir d'un hook dédié (et donc chaque plugin pourrai ajouter des propres entrés dans la Navbar).
A noter aussi que disposer d'un système de plugin plus complet permettrais aussi de retirer de base certaines fonctionnalité qui ne servent que dans certain cas (c'est aussi le but les plugin), comme par exemple les rappels sms et ainsi d’alléger un peut plus la base en lui laissant uniquement gérer le cœur de Medshake.
Pour cela je ne souhaite pas ajouter les pages du plugin directement dans le sous dossier base des templates mais qu'il puisse disposer de sons propre sous dossier de template comme pour les modules.
Je pense adapter la méthode msGetHtml::_construcDefaultTemplatesDirectories() pour cela.
Y aurait il d’éventuels problèmes à prendre en compte en faisant cela ?
Je me demande aussi comment gérer au mieux la priorité des templates. Doivent ils être prioritaire sur les templates de modules ? Comment on peut gérer les priorités entres plusieurs plugin qui proposerai des templates avec le même nom ?
Autres problème, comment permettre aux plugins d'ajouter des entrées dans la Navbar. J'aurai imaginé ajouter des includes conditionnels ajouté dans pageTopNavbar.html.twid avec des élément issue d'un array que les plugins pourrai chacun remplir à partir d'un hook dédié (et donc chaque plugin pourrai ajouter des propres entrés dans la Navbar).
A noter aussi que disposer d'un système de plugin plus complet permettrais aussi de retirer de base certaines fonctionnalité qui ne servent que dans certain cas (c'est aussi le but les plugin), comme par exemple les rappels sms et ainsi d’alléger un peut plus la base en lui laissant uniquement gérer le cœur de Medshake.