web-dev-qa-db-fra.com

Thème enfant vs thème dupliqué renommé

D'accord, je vois souvent des gens parler de thèmes enfants et des raisons de les utiliser au lieu de modifier le thème existant, mais ils semblent tous se concentrer sur l'idée que si le thème parent est mis à jour, tous les changements seront perdus. Dans le passé, lorsque j'ai créé des sites, j'ai toujours dupliqué le thème de départ, changé le nom du thème dans style.css et travaillé directement à cet emplacement. Il me semble qu'utiliser un seul thème au lieu d'un thème enfant permettrait de réduire les coûts et de mieux contrôler le code, en supprimant par exemple les fonctions inutiles plutôt que de les contourner. Si je rencontre des problèmes, je dois toujours faire référence aux fichiers de thème d'origine, et si le thème parent est mis à jour, mon thème enfant peut quand même se rompre si les noms de fonction et ce type de modification changent. Par conséquent, je ne vois pas cela comme un réel avantage.

Mes recherches sur le Web n'ont pas donné beaucoup d'informations sur ce sujet, sauf "préférence du développeur", ce qui n'est pas vraiment une raison.

Y at-il des avantages réels à utiliser un thème enfant par rapport à la duplication et au changement de nom du thème?

6
SickHippie

Les thèmes enfants sont utiles pour les utilisateurs qui souhaitent principalement apporter des modifications de style à leur thème, mais qui ne souhaitent ni ne savent conserver le code sous-jacent. Le développement de thèmes PHP/WordPress pour Grokking est une chose totalement différente de celle de CSS.

Les thèmes enfants sont également utiles aux utilisateurs qui souhaitent implémenter des modifications fonctionnelles mineures dans leur thème. Ceci est particulièrement utile pour les thèmes qui fournissent de nombreux moyens de modification: crochets action/filtre, fonctions enfichables, etc. Certes, de tels mods pourraient tout aussi bien être implémentés via un plugin personnalisé, mais un tel plugin ne s'appliquerait que si le thème correct était utilisé. est actif, il est donc tout aussi logique de placer ce code dans un thème enfant.

Si vous êtes à l'aise avec le maintien d'un thème forké et que vos modifications dépassent ce qui serait raisonnable pour un thème enfant, alors, par tous les moyens: branchez le thème.

Tout se résume à la méthode la plus avantageuse pour l'utilisateur final.

10
Chip Bennett

En plus de Chip Bennets répondre

Certains développeurs, comme moi, ont leurs propres frameworks ou en utilisent un comme Genesis, Hybrid, etc. Ces frameworks ne regroupent pas trop de styles, mais plus de fonctionnalités comme leurs propres mécanismes de création de modèles et d'accrochage. Parfois aussi des choses comme les classes de base CPT ou CT, les bibliothèques de méta-boîtes, les frameworks css, etc. Il est souvent plus simple de gérer tout votre code dans des pensions séparées, de les regrouper dans un "Thème" et d'utiliser ensuite ces parties dans votre thème enfant.

Dans mon cas, mon thème framework/library/parent n’a rien de plus que le mécanisme de chargement des éléments de ma bibliothèque, mes hooks et tempalting et une fonction bootstrap. Dans un thème enfant, je peux ensuite simplement définir ce dont j'ai besoin pour une tâche spécifique, ajouter des modules à tâche unique ou étendre les classes de base parent. Dernier point mais non le moindre: le thème Enfant contient toutes les parties de mon interface utilisateur: styles, scripts, images.

Donc, pour moi et beaucoup d’autres développeurs, c’est une façon élégante de garder les choses généralisées, organisées et réutilisables.

6
kaiser

L'une des principales utilisations des thèmes enfants est dans les instances MUWP. Souvent, dans une installation multisite, les sites associés partagent une partie ou la plupart du thème, mais peuvent nécessiter des mises en page ou des styles d'élément personnalisés. Dans ce cas, il est logique d'utiliser des thèmes pour enfants. Les éléments identiques sont abordés dans le thème parent (qui peut en fait être un thème personnalisé basé sur un thème par défaut dupliqué, selon votre hypothèse), les éléments devant être différents sont traités dans le ou les thèmes enfants.

La beauté des thèmes pour enfants réside dans le fait que les seules différences entre le thème pour enfants et le thème pour les parents sont clairement visibles dans le thème pour enfants lui-même. Vous voulez savoir ce qui est différent entre un thème parent et enfant? Le thème de l'enfant lui-même est la somme de ces différences. Besoin de changer quelque chose sur le thème de l'enfant? Il suffit de parcourir quelques règles et fonctions plutôt que de parcourir le code du thème entier.

5
heathenJesus