web-dev-qa-db-fra.com

Starter Theme vs Parent Theme? Avantages et inconvénients

Je construis un thème qui servira d'exemple à d'autres sites de la société dans laquelle je travaille. Dans un autre projet, nous avons utilisé le thème parent hybride et avons été très faciles à créer, mais VRAIMENT difficile à gérer.

Je préfère l'approche du thème de démarrage, qu'un autre développeur copie le thème et crée à partir de celui-ci. Le parent-> enfant donne trop de liberté pour le développeur gâcher le code. Par exemple, je ne savais pas si quelque chose était appelé sur l'enfant ou sur le parent.

J'aimerais avoir de vos nouvelles:

  • Quand un thème de parent est meilleur?
  • Quand un thème de démarrage est meilleur?
  • Quels sont les avantages et les inconvénients pour chacun d'eux?

Merci.

9
romulodl

Je suis totalement d'accord avec Rarst . Je veux juste ajouter quelques petites choses.

Remarque: Je différencie le thème parent et le framework. Dans ma réponse, je considère le thème parent comme TwentyEleven où il est principalement créé pour un site Web spécifique et moins de points d'ancrage qu'un cadre.

Thème de démarrage:

Pros

  • Facile à personnaliser au niveau HTML. Je veux dire quelque chose comme open <div>, une classe CSS personnalisée pour un élément spécifique. C'est un bon moyen de créer un thème très minimal pour un blog personnel sur lequel vous n'avez pas besoin de beaucoup de choses fournies par le thème parent (ou du moins si vous utilisez un thème/cadre parent, vous devez vous en servir pour les supprimer). Vous pouvez également faire écho à une partie spéciale du code HTML, telle qu'une iframe qui fait référence à un autre site Web ou tout simplement un "texte bonjour" beaucoup plus facile que d'utiliser un thème parent.
  • Pas besoin de dupliquer le fichier de modèle du thème parent pour changer de petites choses.
  • Nul besoin d'apprendre quelque chose de nouveau comme un mappage de crochet, une syntaxe personnalisée, des fonctions personnalisées, etc. Ce sont ce que les développeurs aiment, mais pas les utilisateurs de tous.

Cons

  • Comme il s'agit d'un starter, vous devez faire beaucoup de choses pour que votre thème soit terminé: CSS, modèles personnalisés, etc. Vous ne voudrez peut-être pas le faire si vous êtes trop paresseux!

Thème parent:

Pros

  • A une conception complète que vous pouvez facilement Tweak en changeant les petites lignes dans style.css comme changer la couleur, la taille de la police, etc.
  • (Est-ce que} un thème complet, ce qui signifie que vous pouvez le créer tout de suite, sans vous soucier de quelque chose comme un modèle de commentaire, un modèle de page unique, etc.
  • Quelqu'un l'a construit le pour vous!

Cons

  • Le thème parent doit être considéré comme bon s'il correspond principalement à vos besoins, afin que vous puissiez le modifier le moins possible. Sinon c'est un cauchemar
  • La capacité de personnalisation n'est pas trop élevée. Je ne parle pas du système de hook que vous pouvez voir dans les frameworks ici (voir les frameworks ci-dessous). Si vous souhaitez le personnaliser fortement, vous devez réécrire la plupart des fichiers de modèle, ce qui signifie que vous recréez le thème. Ce n'est pas dans le but d'utiliser le thème parent.

Cadre:

Pros

  • Tout est disponible: le framework est souvent conçu comme une solution tout-en-un, ce qui lui permet de créer tout type de site Web. Vous avez besoin d'un logo personnalisé? pipette à couleurs? glisser-déposer? disposition du thème? ... vous les avez déjà dans votre main.
  • Construire un site Web plus rapidement si vous le connaissez bien
  • Possède un système de hook complet qui permet aux utilisateurs de se connecter à de nombreux endroits pour modifier de nombreux éléments fournis par la structure
  • Haut niveau de personnalisation: non seulement dans le système de hook, mais de nombreux frameworks comme Catalyst, Headway vous permettent de personnaliser presque tous les éléments directement dans l’administrateur sans toucher à CSS ni au hook.

Cons

  • L'utilisateur doit apprendre le cadre (système de connexion, se familiariser avec ses fonctions, ses paramètres et même une nouvelle terminologie) pour l'utiliser efficacement. Je considère cela comme le plus gros inconvénient du framework, car WP a déjà beaucoup de choses à apprendre et tous les utilisateurs ne veulent pas apprendre de nouvelles choses simplement pour utiliser WP mieux. Ces choses sont ce que les développeurs aiment, mais pas tous les utilisateurs. Les utilisateurs sont des personnes qui utilisent, sans apprendre ni personnaliser.
  • Code redondant: certaines parties des frameworks coïncident avec les fonctionnalités WP qui entraînent la duplication. Exemple: genesis_meta() (inutile car nous avons wp_head).
  • Performances: parce que les frameworks ont tout ce dont vous avez besoin => il doit charger tous les fichiers nécessaires pour admin/frontend que vous pourriez ne pas utiliser du tout. Pour ce point, je préfère la façon dont Hybrid Core charge ses fichiers (en utilisant require_if_theme_supports function)
  • Le look par défaut est souvent minimal et mauvais. Nous devons travailler beaucoup pour faire la conception. Le processus est similaire si vous utilisez un thème de démarrage, mais vous utilisez des crochets au lieu de modèles personnalisés, comme dans les thèmes de démarrage.
  • Framework a sa propre philosophie qui conduit à différentes manières de construire des frameworks => conduit à de nombreux frameworks => nous ne savons pas lequel est le meilleur pour nous (spécialement quand ils sont premium). Ce n'est pas très bon, car comme je l'ai dit plus haut, le framework est bon pour les développeurs, et les développeurs doivent approfondir le code pour voir s'il est bon! Si le cadre est premium, cette porte est regardée!

Dernière chose: tous les thèmes de départ & thème & framework parent peut être utilisé pour n’importe quel site if il est facile pour vous de personnaliser le résultat final. Il n'y a pas une solution unique pour toutes les situations. Nous devons choisir celui qui peut nous aider le plus, peut-être que cette fois le thème de départ est bon, mais dans un autre temps - un cadre. À propos, travailler avec chacun d’entre eux peut nous apporter beaucoup d’expérience qui nous aidera dans de nombreuses situations, pas seulement lors de la création de thèmes!

10
Anh Tran

L’équilibre du flux de travail par thème est une combinaison de plusieurs facteurs:

  • quantité de code, individuel aux sites
  • quantité de code, partagée entre les sites
  • incorporer les changements en amont

Chacune de celles-ci peut être importante et chacune d'entre elles peut être sans importance.

Le modèle de thème parent satisfait assez bien à toutes ces questions, mais pas à very well. Vous obtenez une séparation claire des codes individuels et partagés, ainsi que des mises à jour simples en amont (si vous utilisez un thème parent tiers). Il commence à se séparer lorsque les exigences sont plus grandes que d'habitude - beaucoup de code individuel ou beaucoup de code partagé qui ne peut pas être facilement mélangé dans un thème parent tiers.

Le thème de démarrage est en revanche un modèle très spécialisé. Il favorise les sites individuels, mais désavoue les modifications en amont et le code partagé. Dès que vous personnalisez le thème de démarrage, tout le fardeau de l'insertion et de la suppression du code repose sur vous.

La tendance la plus récente consiste à séparer les frameworks en composant de type plugin plutôt que d’exécuter complètement le thème parent. Si vous connaissez Hybrid en tant que thème parent, explorez Hybrid Core. Cette approche est essentiellement une amélioration par rapport au parent/enfant, les mises à jour en amont étant facilitées en se limitant au cadre et non au thème entier.

En un mot (devient un peu subjectif ici):

  • le démarreur convient aux sites individuels
  • parent/enfant s'adapte à plusieurs sites avec peu de personnalisation
  • cadre/parent/enfant peut s’adapter à tout et n'importe quoi, mais est également plus impliqué dans le développement
9
Rarst

La principale raison d’utiliser des thèmes parents est de permettre des mises à jour plus faciles. Si vous prenez un thème et le modifiez directement, il doit réappliquer les modifications apportées (ou les fusionner dans le thème original). dans votre thème modifié).

4
anu