Un plugin WordPress complet pour la gestion des témoignages avec formulaire de soumission et affichage en masonry.
- Formulaire de soumission avec validation
- Affichage masonry des témoignages validés
- Chargement AJAX pour "Lire plus de témoignages"
- Design campagne politique (bleu, blanc, rouge)
- Interface responsive et accessible
- CPT "Témoignage" avec statuts personnalisés
- Validation manuelle des témoignages
- Métaboxes personnalisées pour les détails
- Colonnes personnalisées dans la liste admin
- Pages d'administration : Documentation, Statistiques, Shortcodes
- WordPress 5.0 ou supérieur
- PHP 7.4 ou supérieur
- jQuery (inclus avec WordPress)
- Télécharger le plugin dans le dossier
/wp-content/plugins/ - Activer le plugin via l'interface WordPress
- Configurer les shortcodes sur vos pages
[temoinage_form title="Témoignez vous aussi votre soutien!"]Paramètres :
title: Titre du formulaire (optionnel)
[temoinage_list title="Un élan populaire pour Bordeaux" posts_per_page="5"]Paramètres :
title: Titre de la section (optionnel)posts_per_page: Nombre de témoignages par page (optionnel, défaut: 5)
- Prénom (obligatoire)
- Nom (obligatoire)
- Fonction (optionnel)
- Message (obligatoire)
- À valider : Témoignages soumis en attente de validation
- En ligne : Témoignages validés et visibles publiquement
Le plugin utilise des variables CSS pour faciliter la personnalisation :
:root {
--primary-color: #1e3a8a; /* Bleu principal */
--secondary-color: #3b82f6; /* Bleu secondaire */
--accent-color: #dc2626; /* Rouge accent */
--background-color: #ffffff; /* Blanc */
--border-color: #e5e7eb; /* Gris clair */
--text-color: #1f2937; /* Gris foncé */
--text-light: #6b7280; /* Gris moyen */
--success-color: #059669; /* Vert succès */
--error-color: #dc2626; /* Rouge erreur */
}.temoinage-form-container: Container principal du formulaire.temoinage-form: Formulaire de soumission.form-row: Ligne avec deux colonnes.form-group: Groupe de champs.temoinage-submit-btn: Bouton de soumission
.temoinage-list-container: Container principal de la liste.temoinage-masonry: Grille masonry.temoinage-card: Carte individuelle de témoignage.temoinage-author: Section auteur.temoinage-message: Contenu du témoignage.temoinage-load-more-btn: Bouton "Lire plus"
- Accéder à "Témoignages" dans le menu WordPress
- Voir la liste des témoignages avec colonnes personnalisées
- Modifier les détails via les métaboxes
- Approuver/Rejeter avec les boutons d'action rapide
- Guide complet d'installation et configuration
- Documentation des shortcodes
- Intégration avec Divi Builder
- Personnalisation et support
- Vue d'ensemble des témoignages
- Compteurs en temps réel
- Alertes pour témoignages à valider
- Documentation des shortcodes disponibles
- Exemples d'utilisation
- Paramètres configurables
- Intégration Divi Builder
// Via AJAX
$.ajax({
url: temoinage_admin.ajax_url,
type: 'POST',
data: {
action: 'approve_temoinage',
nonce: temoinage_admin.nonce,
post_id: postId
}
});// Via AJAX
$.ajax({
url: temoinage_admin.ajax_url,
type: 'POST',
data: {
action: 'reject_temoinage',
nonce: temoinage_admin.nonce,
post_id: postId
}
});- Nonces WordPress pour toutes les actions AJAX
- Sanitisation des données d'entrée
- Validation côté client et serveur
- Permissions utilisateur vérifiées
- Protection CSRF intégrée
- Utilisation des fonctions WordPress natives
- Échappement des données de sortie
- Validation des permissions utilisateur
- Gestion sécurisée des fichiers
- Mobile : < 480px
- Tablet : 480px - 768px
- Desktop : > 768px
- Grille masonry responsive
- Formulaire en colonnes sur mobile
- Boutons adaptés au tactile
- Typographie scalable
- Navigation clavier complète
- ARIA labels et rôles
- Focus management amélioré
- Contraste conforme WCAG
- Lecteurs d'écran compatibles
- Ctrl/Cmd + Enter : Soumettre le formulaire
- Ctrl/Cmd + S : Sauvegarder (admin)
- Échap : Fermer les modales
- Tab : Navigation entre champs
- Lazy loading des images
- Debouncing des recherches
- Cache des requêtes AJAX
- Minification des assets
- Compression des données
- Temps de chargement < 2s
- Score Lighthouse > 90
- Optimisation Core Web Vitals
- Gestion mémoire efficace
- Vérifier que les témoignages sont au statut "En ligne"
- Contrôler les permissions utilisateur
- Vérifier la configuration des shortcodes
- Vérifier les nonces WordPress
- Contrôler les permissions
- Consulter les logs d'erreur
- Vérifier la compatibilité du thème
- Contrôler les conflits CSS
- Tester en mode debug
// Dans wp-config.php
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);// Dans le code du plugin
error_log('Message de debug: ' . $variable);- ✅ Fonctionnalités de base
- ✅ Formulaire de soumission
- ✅ Affichage masonry
- ✅ Administration complète
- ✅ Design wireframe
- 🔄 Export/Import CSV
- 🔄 Notifications email
- 🔄 Modération automatique
- 🔄 Analytics avancées
- 🔄 API REST
- Email : support@example.com
- GitHub : Issues
Ce plugin est distribué sous licence GPL v2 ou ultérieure.
Les contributions sont les bienvenues ! Veuillez :
- Fork le projet
- Créer une branche feature
- Commiter vos changements
- Pousser vers la branche
- Ouvrir une Pull Request
- PSR-12 pour PHP
- ESLint pour JavaScript
- Prettier pour le formatage
- Tests unitaires requis
Développé avec ❤️ pour la communauté WordPress