Structure des dossiers
Le Theme 32 Blank est basé sur l'architecture de dossier du theme sage de roots.io. Pour en savoir plus, vous pouvez consulter la documentation officiel de roots.io
Ci-dessous, vous trouverez la structure de dossiers du theme 32 blank de base. En fonction des spécificités des projets, elle peut être différente.
├── app # contient l'ensemble de classes PHP qui compose votre projet
│ ├── Configurations # contient tous les élements qui doivent être enregistré sur WordPress : Bloc, champs, page d'options, type de contenu, taxonomie...
│ │ ├── Blocks # contient l'ensemble des classes Block qui permettent l'ajout de blocs ACF via ACF Composer
│ │ ├── Fields # contient l'ensemble des classes Field qui permettent l'ajout de champs ACF via ACF Composer
│ │ ├── Options # contient l'ensemble des classes Option qui permettent l'ajout de page d'option ACF via ACF Composer
│ │ ├── PostTypes # ensemble des fichiers PHP qui permettent d'enregistrer des nouveaux types de contenus
│ │ └── Taxonomies # ensemble des fichiers PHP qui permettent d'enregistrer de nouvelles taxonomies
│ ├── Mappers # ensemble de classe qui permettent de transformer des données (Models, tableau, id) en DTO
│ ├── Providers # contient vos ServiceProviders (voir la documentation Laravel pour en savoir plus)
│ ├── Repositories # contient l'ensemble des classes `Repositories`. Pour faire simple, ce sont les classes qui font les queries
│ ├── Services # contient l'ensemble des classes `Services`. Ensemble des classes "Utilitaires" qui regroupe un ensemble de fonctions autour d'un sujet commun
│ ├── Support # contient l'ensemble des classes qui font fonctionner le theme 32 blank. Vous n'avez rien à modifier ici
│ ├── View # contient l'ensemble des classes qui permette l'interaction avec nos vues
│ │ ├── Components # contient les composants de notre application
│ │ ├── Composers # contient les `View Composers` de notre application. Dans notre architecture, ils sont comparable à des controlleurs
│ │ ├── Data # contient des classes `View Data` comparable à des `DTO`. Ils servent surtout à typer nos retours de fonctions pour éviter d'avoir à utiliser des tableaux associatifs
│ │ └── Livewire # contient les composants `Livewire` de notre application
├── config # contient des fichiers de configuration utile au theme 32 blank
├── node_modules # contient les dépendances node de notre projet
├── public # dossier public qui contient les ressources compilées
├── resources # contient l'ensemble des ressources de votre projet : vues, scripts, fonts...
└── vendor # contient les dépendances php de votre projet