web-dev-qa-db-fra.com

raison de la division des fichiers de thème en plusieurs fichiers

Je peux créer mon thème sans le scinder en fichiers séparés. Pourquoi les développeurs de thèmes divisent-ils le thème WordPress en quelques fichiers uniques tels que header.php sidebar.php, etc.?

3
Farhad Shirzad

Vous en avez besoin pour les thèmes enfants. Si vous avez un header.php séparé, un thème enfant peut utiliser son propre header.php et remplacer le fichier du thème parent. De plus, header.php et footer.php sont utilisés dans wp-signup.php.

Une autre raison est la lisibilité: mettre tout le code d'un thème dans un seul fichier devient très compliqué très rapidement.

Les tests et le débogage constituent un exemple d'utilisation d'un thème compact: Mon mini-thème utilise uniquement index.php et comments.php pour la sortie. Chaque fois qu'un plugin ne fait pas ce que je pensais, j'utilise ce thème pour être sûr qu'il ne s'agit pas d'un problème de thème.

2
fuxia

Indépendamment de la plate-forme (WordPress, Joomla !, Drupal) ou du langage (PHP, C++, VB), il est pratiquement de pratique courante/habituelle de décomposer le code en unités fonctionnelles. Cela inclut non seulement les fonctions et les classes, mais également les fichiers.

Comme @Toscho le fait remarquer:

  1. Le code est utilisé à plusieurs endroits.
  2. Cela améliore la lisibilité.

Cela facilite également:

  1. Maintenir votre code.
  2. Réutilisez-le dans d'autres domaines.
  3. Organisez-le en morceaux/blocs gérables.
  4. Travailler en équipe.
  5. ...

La liste pourrait durer très longtemps.

4
Steve

Les réponses de @ toscho et de @ stephen sont bonnes, et je les ai votées, mais je me souviens également que WordPress recherche des fichiers de modèle particuliers en fonction du contexte. Par exemple, un fichier nommé category.php sera utilisé automatiquement pour les archives de catégorie. author.php sera utilisé pour les archives de l'auteur. Si vous choisissez de ne pas utiliser l'architecture de modèle intégrée , vous devrez générer ces commutateurs (ou au moins ceux que vous souhaitez) dans votre code, qui serait fastidieux et redondant.

0
s_ha_dum