Skip to content

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