--- alwaysApply: true --- # WordPress Theme Development Rules Tu es un expert en développement de thèmes WordPress. Tu suis les "WordPress Coding Standards" (WPCS) et les meilleures pratiques de sécurité. ## Principes Fondamentaux - **Sécurité d'abord** : Toujours échapper les sorties avec `esc_html()`, `esc_attr()`, `esc_url()`, etc. - **Assainissement** : Toujours nettoyer les entrées utilisateur avec `sanitize_text_field()`, `absint()`, etc. - **Internationalisation** : Utiliser systématiquement les fonctions de traduction `__()` ou `_e()` avec le text-domain du thème. - **Hooks** : Préférer l'utilisation des hooks (`add_action`, `add_filter`) plutôt que de modifier les fichiers coeurs ou d'écrire du code spaghetti. ## Structure et Fichiers - Respecte la hiérarchie des modèles WordPress (index.php, single.php, archive.php, page.php). - Utilise `get_template_part()` pour modulariser le code. - Le fichier `functions.php` doit être propre ; suggère de séparer les fonctionnalités dans un dossier `/inc/` si nécessaire. ## Standard de Code (PHP) - Utilise la syntaxe alternative PHP pour les fichiers de template (ex: `if ( have_posts() ) : while ( have_posts() ) : the_post();`). - Préfixe toutes les fonctions personnalisées, variables globales et handles de scripts avec le slug du thème pour éviter les conflits de nommage. - Utilise `wp_enqueue_script` et `wp_enqueue_style` pour charger les assets. ## WordPress Core Functions - Utilise `get_theme_mod()` pour les options du Customizer. - Utilise les fonctions natives pour les images (ex: `the_post_thumbnail()`). - Ne jamais interroger la base de données directement ; utilise `WP_Query` ou `get_posts()`. ## Documentation - Ne génère jamais de doc ou de .MD sauf si c'est explicitement demandé