Les "extraits" (code abrégé ou fonctions) doivent-ils être ajoutés à:
Quel est le meilleur du point de vue technique, de la sécurité, de la performance, etc.?
Outre la raison pour laquelle lors de la mise à niveau du fichier functions.php peut être écrasé, quelles seraient les autres raisons de créer des plug-ins spécifiques au site à partir des "extraits"?
Du point de vue des performances, je ne pense pas qu'il y ait de différence entre functions.php et les plugins: ce sont juste des endroits différents pour le code.
Je serais pratique: si la fonction fait partie du coeur du thème (disons, un curseur défilable dans l'en-tête sans lequel le thème ne vaut rien): c'est une fonction du thème.
S'il s'agit d'une fonction générique qui pourrait être utile pour un autre thème (par exemple, un champ de données personnalisé), il est préférable de le transformer en plugin, car vous pouvez facilement copier/coller cette fonction si les fichiers sont séparés du thème.
La meilleure option que je dirais consiste à créer un thème enfant pour le thème actuel et à ajouter tous les extraits dans le fichier functions.php du thème enfant. De cette manière, le fichier functions.php ne sera pas écrasé lors de la mise à jour du thème actuel.
J'irais pour un plugin. Les publications contenant des codes courts, par exemple, ne doivent pas être interrompues lors du changement de thème.
Sachez que vous pouvez également créer des plugins indispensables . Ils fonctionnent exactement comme des plugins similaires, mais ils ne peuvent pas être désactivés via la zone d'administration de WordPress.
Par exemple, lors de la création d'un site de cuisson dépendant d'un type de recette personnalisé, je placerais des éléments tels que l'enregistrement du type de message, des taxonomies personnalisées, des codes abrégés, de nouveaux widgets ou des méta-boîtes d'administration personnalisées dans plugin au lieu du thème.
Il semble que vous demandiez d'ajouter vos extraits de code au fichier functions.php développé par quelqu'un d'autre. Ou mettez ces extraits dans le plugin spécifique au site.
Si vous souhaitez éviter que vos extraits de code et vos personnalisations de functions.php soient remplacés par la mise à jour du thème, vous devez utiliser un thème enfant.
Maintenant, comment pouvez-vous décider de mettre le code dans functions.php ou dans un plugin spécifique au site. Si l'extrait de code concerne l'ajout de fonctionnalités à un thème, comme l'enregistrement de la taille des colonnes, ou l'enregistrement de menus ou de barres latérales, il doit faire partie du thème functions.php.
Si l'extrait de code concerne les fonctionnalités du site, il doit être inséré dans le plug-in spécifique au site, par exemple, en enregistrant des types d'article personnalisés, des taxonomies personnalisées ou éventuellement une structure de lien permanent permalink.
Lorsque je ne suis pas en mesure de décider où placer le code en fonction des critères ci-dessus, je me demande si j'ai besoin de cet extrait de code lorsque, plus tard, je change de thème si la réponse est oui, l'extrait de code va au plugin et si la réponse est non, l'extrait de code va à la functions.php.