La vitesse de cette page TTFB … LCP …

Open source · Ata

Donnez des ailes à votre plugin WordPress.
Avec une structure MVC-S.

ATA aide les développeurs de plugins WordPress à garder leur code organisé et maintenable à mesure qu’il grandit, grâce au design pattern MVC.

Pour les développeurs de plugins WordPress

Chaque chose à sa place.

ATA donne à chaque plugin la même structure prévisible : votre code reste organisé et maintenable, même quand il grandit.

ATA Folder STRUCTURE

your-plugin-name/
├── app/
│   ├── apis/               # REST API endpoint classes
│   ├── controllers/        # Controller classes
│   ├── helpers/            # Global helper functions
│   ├── models/             # Data logic (database interaction)
│   │   └── structures/     # Optional: DTOs/data structure classes
│   ├── routes/             # API and custom URL definitions
│   ├── services/           # Business logic layer
│   └── views/              # View files (HTML/PHP templates)
│
├── base/                   # Base classes your app classes extend
├── config/                 # Plugin-wide configuration
├── constants/              # Custom constant definitions
├── inc/                    # Bootstrapping and initialization files
├── vendor/                 # Composer dependencies (includes the core ATA framework)
│
└── your-plugin-name.php    # The main plugin entry file

Les principes fondamentaux d’Ata.

Structuré par défaut

ATA fournit une arborescence prédéfinie qui sépare logiquement les différentes parties de votre plugin.

L’orienté objet d’abord

Il encourage l’écriture de code sous forme de classes plutôt que de fonctions procédurales, pour un code mieux organisé et plus réutilisable.

Une séparation claire des responsabilités

Il met en œuvre une variante du pattern MVC pour garder bien séparées vos couches logique, données et présentation.

Un routage simplifié

ATA intègre un routeur qui rend la déclaration d’endpoints REST API ou d’URL personnalisées simple et déclarative.

Les différences clés

Qu’est-ce que MVC-S ?

ATA promeut une variante du pattern Modèle-Vue-Contrôleur (MVC), que nous appelons MVC-S (Modèle-Vue-Contrôleur-Services).

Contrôleur (le moteur central)

Le Contrôleur est le cœur du fonctionnement de votre plugin. Il traite les requêtes entrantes, enregistre tous les hooks et filtres WordPress et pilote le flux de l’application. Pour un plugin simple, le Contrôleur peut gérer directement toute la logique et l’accès aux données. Dans des applications plus complexes, son rôle évolue vers celui d’un chef d’orchestre : il fait appel à un Service pour la logique métier ou à un Modèle pour les données, puis transmet les résultats à une Vue pour l’affichage.

Vue (la couche de présentation)

La Vue est une couche facultative qui génère le HTML. Elle reçoit les données du Contrôleur et les affiche. Une Vue doit contenir un minimum de logique PHP et se concentrer uniquement sur l’affichage des données qu’on lui transmet.

Modèle (la couche de données)

La seule responsabilité du Modèle est l’interaction directe avec la base de données. Dans une classe Modèle, vous accédez à l’objet de base de données WordPress via $this->db (par ex. $this->db->get_results(...)). Cette couche est facultative : si votre plugin n’interagit pas avec la base de données, vous n’en avez pas besoin.

Service (la couche logique)

La couche Service est l’emplacement facultatif mais recommandé pour la logique métier de votre plugin. Quand la logique devient trop complexe pour un Contrôleur, extrayez-la dans un Service. Vos Contrôleurs restent ainsi légers et centrés sur le traitement des requêtes.

Plugin d’exemple

Polylang RestAPI Helper

Le plugin polylang-restapi-helper est un exemple parfait et ciblé du framework ATA.

Structurer votre plugin WordPress en MVC avec ATA

Documentation

Démarrer avec ATA dans votre plugin, vite et simplement

Votre réussite pourrait être la prochaine.

Des questions ? Nous sommes là pour vous aider à faire le bon choix.