# Classe

> Modèle définissant les propriétés et méthodes communes à un ensemble d'objets ; en PHP, elle sert de plan à partir duquel on crée des instances.

- Auteur : Clément Hadrot
- Publié le : 2026-09-25
- Mis à jour le : 2026-09-25
- URL : https://wpmoderne.dev.wordpress-developpement.fr/lexique/classe-php/

Un plan d'architecte qu'on utilise pour construire plusieurs maisons similaires, chacune avec ses propres habitants mais la même structure de base : une classe PHP joue ce rôle de plan, dont on peut créer autant d'instances (objets) que nécessaire.

## La programmation orientée objet dans WordPress

Le cœur de WordPress reste majoritairement procédural sur ses parties historiques, mais des composants entiers comme `WP_Query`, `WP_User` ou `WP_REST_Controller` sont bâtis en classes. Un plugin moderne bien structuré organise généralement sa logique en classes plutôt qu'en un empilement de fonctions globales, ce qui facilite les tests automatisés et évite les collisions de noms.

## Exemple

```
class Panier
{
    private array $articles = [];

    public function ajouter(string $produit, int $quantite): void
    {
        $this->articles[$produit] = $quantite;
    }

    public function total(): int
    {
        return array_sum($this->articles);
    }
}
```

## Bon à savoir

- Une classe peut hériter d'une seule autre classe (`extends`) mais implémenter plusieurs interfaces (`implements`), une distinction importante dans la conception d'une architecture PHP.
- Les propriétés typées (comme `private array $articles`) disponibles depuis PHP 7.4 renforcent la fiabilité du code en signalant une erreur si un type incorrect est assigné.
- Une classe déclarée `final` ne peut plus être étendue par héritage, un choix parfois délibéré pour éviter des surcharges imprévues dans un plugin distribué publiquement.
