J'écris un plugin de type de publication personnalisé. Une partie de celui-ci, je le renvoie au modèle via des shortcodes. Mais d'autres parties ont besoin d'un modèle de publication personnalisé, et j'ai compris comment utiliser la hiérarchie des modèles pour les CPT. Mais le modèle personnalisé est dans le thème, et je pense que le plugin devrait être autonome, au moins pour commencer.
Alors, quelle est la meilleure pratique ici? Comment inclure des fichiers de modèle dans un plugin CPT? Pouvez-vous m'indiquer des exemples particulièrement bons de la façon dont cela est fait?
Merci de votre aide.
custom-post-types
plugin-development
template-hierarchy
NotoriousWebmaster
la source
la source
Réponses:
Je dirais une combinaison de laisser le thème le gérer et de fournir un défaut avec votre plugin.
Vous pouvez utiliser le
single_template
filtre pour désactiver le modèle. Dans votre rappel, voyez si le thème a fourni un modèle pour le type de message, s'il l'a fait, ne faites rien.J'aime le mieux cette méthode. Combinez-le avec un ensemble sain de «balises de modèle» (par exemple
the_content
,the_title
) qui prennent en charge toutes les données personnalisées qui vont de pair avec votre type de publication et vous donnez à l'utilisateur final beaucoup de pouvoir de personnalisation ainsi que certaines valeurs par défaut du son. Bbpress fait ce genre de chose très bien: inclut des modèles utilisateur s'il les trouve et fournit beaucoup de balises de modèle.Alternativement, vous pouvez utiliser un rappel avec
the_content
filtre et simplement changer des éléments dans le contenu lui-même.la source
Vous pouvez vous connecter
template_include
et renvoyer votre fichier de plugin si la demande concerne votre type de publication:Mais cela changera radicalement le look. Il n'y a toujours pas de solution propre.
la source