web-dev-qa-db-fra.com

ajouter/ajouter des modèles 'de manière transparente' via un plugin au thème actuellement actif ou au thème enfant?

Cross pose ma question trac ici dans le mince espoir que quelqu'un ici a rencontré le même problème et a déjà mis au point un code de preuve de concept que je peux essayer:

En construisant un 'plugin de thème' personnalisé pour bbpress, je venais juste de me rendre compte qu'il était impossible pour un plugin d'ajouter/ajouter des fichiers modèles de manière transparente au thème ou au thème enfant actuellement actif.

J'aimerais demander l'amélioration suivante: lorsqu'un thème recherche un modèle personnalisé, tel que single-forum.php, pour rechercher un dossier de plug-in s'il ne figure pas dans le thème enfant ou le thème parent.

Je pense à un type d’action où mon plugin peut dire "ajoute-moi" à la liste des lieux que vous recherchez pour des modèles.

Si ma compréhension est correcte, lorsque WordPress recherche un modèle, il commence par l’enfant, puis le thème parent se termine ici.

Pourquoi? Si un utilisateur ajoute manuellement tous les modèles personnalisés nécessaires à son thème actuel et qu'il met à jour son thème, il perd tous les modèles qu'il a ajoutés manuellement.

Cela signifie que je n'ai aucun moyen de donner à un utilisateur des modèles de thème personnalisés qui ne seront pas perdus lors de la mise à niveau, ce qui les oblige à rajouter manuellement les modèles à chaque mise à niveau de leur thème.

Ce que cela signifie vraiment pour moi, c’est qu’il n’existe aucun moyen réel de créer des modèles bbpress personnalisés pour les utilisateurs sans avoir à s’inquiéter de les perdre.

Je peux suivre la route actuellement utilisée par bbpress dans cette situation, à savoir que bbpress utilise le modèle themes page.php et remplace the_content (). Le problème est que je suis coincé avec tout ce qui est inclus dans le fichier page.php de themes actifs.

* Par exemple, vingtten a le titre en dur et l'appel à l'encadré, que je ne peux pas supprimer.

Je ne peux pas emprunter la route des thèmes pour enfants, car je dois supposer qu'ils utilisent déjà un thème pour enfants.

Un autre développeur m'a dit aujourd'hui que ce problème avait été soulevé il y a environ 2 ans. Je prie pour qu'il y ait un code de preuve de concept que je peux essayer d'utiliser. Est-ce que quelqu'un sait si le code de concept existe quelque part? texte fort

4
shawn

Il n'y a pas de moyen facile de faire cela pour le moment. Découvrez les réponses de cette question pour des solutions de rechange.

0
Matthew Boynes