
Améliorer l'accessibilité de votre site Drupal avec le module d'accessibilité Drupal
L'accessibilité web ne consiste pas seulement à cocher des cases pour la conformité—il s'agit de créer des sites web qui fonctionnent pour tout le monde. Si vous gérez un site Drupal, vous avez accès à des outils puissants qui peuvent vous aider à identifier et corriger les problèmes d'accessibilité avant qu'ils ne deviennent des problèmes. Ce guide vous accompagne à travers les étapes pratiques de configuration et d'utilisation des modules d'accessibilité clés pour rendre votre site Drupal plus inclusif.
Les plus grandes améliorations d'accessibilité se produisent lorsque vous intégrez la vérification et la correction dans votre flux de travail de contenu régulier, plutôt que de les traiter comme un projet séparé qui arrive une fois par année.
Prérequis
Avant de commencer à améliorer l'accessibilité de votre site, assurez-vous d'avoir :
- Accès administrateur à votre site Drupal
- Composer installé pour la gestion des modules (ou accès à l'interface d'installation des modules)
- Compréhension de base de l'installation et de la configuration des modules Drupal
- Permissions d'éditeur de contenu pour tester les fonctionnalités de rétroaction en temps réel
Vous devriez également comprendre ces concepts clés d'accessibilité :
Niveaux de conformité WCAG :
- A : Fonctionnalités d'accessibilité de base
- AA : Niveau de conformité standard (la plupart des exigences légales)
- AAA : Niveau le plus élevé (souvent impraticable pour la plupart des sites)
Problèmes d'accessibilité courants :
- Texte alternatif manquant pour les images
- Ratios de contraste de couleur insuffisants
- Structure d'en-têtes inappropriée
- Formulaires sans étiquettes appropriées
- Navigation non accessible au clavier
Guide de mise en œuvre étape par étape
Étape 1 : Installer les modules d'accessibilité essentiels
Commencez avec ces trois modules de base qui couvrent différents aspects de la vérification d'accessibilité :
# Installation via Composer (recommandé) composer require drupal/editoria11y composer require drupal/auto_alter composer require drupal/axe # Activer les modules drush en editoria11y auto_alter axe -y
Si vous préférez utiliser l'interface d'administration :
- Allez à Étendre dans votre menu d'administration
- Cliquez sur Installer un nouveau module
- Téléchargez ou installez chaque module individuellement
- Cochez les cases à côté des modules installés et cliquez sur Installer
Étape 2 : Configurer Editoria11y pour la vérification de contenu en temps réel
Editoria11y fournit une rétroaction immédiate pendant que les créateurs de contenu travaillent. Voici comment le configurer correctement :
- Naviguez vers Configuration > Création de contenu > Paramètres Editoria11y
- Cochez Activer Editoria11y sur les formulaires de contenu
- Sous Types de contenu, sélectionnez quels types de contenu doivent être vérifiés (commencez par Article et Page de base)
- Dans Vérifier les problèmes, activez :
- Texte alternatif manquant
- En-têtes vides
- Texte alternatif très long
- Texte de lien suspect
- Problèmes de contraste de couleur
Exemple de configuration :
# editoria11y.settings.yml enable_on_forms: true content_types: - article - page - blog_post checks: alt: true headings: true links: true contrast: true lang: true
Étape 3 : Configurer la génération automatique de texte alternatif
Le module auto_alter utilise l'IA pour générer du texte alternatif pour les images qui n'en ont pas :
- Allez à Configuration > Médias > Texte alternatif automatique
- Choisissez votre fournisseur de service (Microsoft Azure Cognitive Services est le plus courant)
- Entrez vos identifiants API
- Configurez quels champs d'image devraient recevoir du texte alternatif automatique
- Configurez le comportement de repli lorsque le service n'est pas disponible
Exemple de code de configuration API :
// Dans votre settings.php ou settings.local.php $config['auto_alter.settings']['api_key'] = 'votre-clé-api-azure'; $config['auto_alter.settings']['api_endpoint'] = 'votre-point-de-terminaison-azure'; $config['auto_alter.settings']['confidence_threshold'] = 0.7;
Étape 4 : Configurer AXE pour les tests automatisés
L'intégration AXE fournit des rapports d'accessibilité détaillés :
- Visitez Rapports > Accessibilité > Rapports AXE
- Cliquez sur Exécuter le scan AXE sur votre page d'accueil
- Examinez les résultats et notez les problèmes par niveau de priorité
- Configurez l'analyse automatisée en allant à Configuration > Système > Cron
- Configurez AXE pour exécuter des analyses pendant les heures creuses
Étape 5 : Tester votre configuration
Après la configuration, vérifiez que tout fonctionne :
- Créez du contenu de test avec des problèmes d'accessibilité (image sans texte alternatif, structure d'en-têtes inadéquate)
- Vérifiez la rétroaction d'Editoria11y qui apparaît en temps réel pendant que vous modifiez
- Téléchargez une image sans texte alternatif et confirmez qu'auto_alter en génère un
- Exécutez un scan AXE et examinez le rapport détaillé
- Testez avec la navigation au clavier pour vous assurer que les éléments interactifs fonctionnent correctement
Exemples de code et détails de mise en œuvre
Intégration de vérificateur d'accessibilité personnalisé
Si vous voulez ajouter des règles d'accessibilité personnalisées, vous pouvez étendre les modules existants :
getElementsByTagName('video');
foreach ($videos as $video) {
$tracks = $video->getElementsByTagName('track');
if ($tracks->length === 0) {
$results[] = [
'rule' => 'custom-video-captions',
'message' => 'Les éléments vidéo devraient inclure des pistes de sous-titres pour l\'accessibilité.',
'type' => 'error',
'element' => $video,
];
}
}
}Mise en œuvre de la barre d'outils d'accessibilité
Ajoutez une barre d'outils d'accessibilité côté utilisateur :
// accessibility-toolbar.js (function ($, Drupal) { 'use strict'; Drupal.behaviors.accessibilityToolbar = { attach: function (context, settings) { // Ajouter des contrôles de taille de police $('.font-size-increase', context).click(function() { $('body').addClass('large-text'); }); $('.font-size-decrease', context).click(function() { $('body').removeClass('large-text'); }); // Ajouter un basculeur de contraste élevé $('.high-contrast-toggle', context).click(function() { $('body').toggleClass('high-contrast'); }); } }; })(jQuery, Drupal);Erreurs courantes à éviter
Erreur 1 : Exécuter des analyses seulement après le lancement
N'attendez pas que votre site soit terminé pour vérifier l'accessibilité. Intégrez ces vérifications dans votre processus de développement et de création de contenu dès le premier jour.Erreur 2 : Se fier uniquement aux outils automatisésLes analyseurs automatisés détectent de nombreux problèmes mais en manquent d'autres. Testez toujours avec de vrais lecteurs d'écran et la navigation au clavier.Erreur 3 : Texte alternatif génériqueLe texte alternatif généré automatiquement comme « image de personne » n'est pas utile. Révisez et personnalisez les descriptions générées automatiquement pour fournir un contexte significatif.Erreur 4 : Ignorer la formation des créateurs de contenuLes meilleurs modules d'accessibilité n'aideront pas si les créateurs de contenu ne comprennent pas pourquoi ils sont importants. Fournissez une formation sur la rédaction de bon texte alternatif, la structure d'en-têtes appropriée, et le texte de lien accessible.Erreur 5 : Corriger les problèmes sans comprendre le contexteUn analyseur d'accessibilité pourrait signaler une image décorative pour un texte alternatif manquant, mais la correction appropriée est d'ajouter alt="" (attribut alt vide), pas du texte descriptif.Étapes de test et de vérification
Liste de vérification pour les tests manuels
Après avoir configuré vos modules d'accessibilité, testez ces scenarios :1. Test de navigation au clavier :
- Naviguez avec Tab à travers tous les éléments interactifs
- Assurez-vous que les indicateurs de focus sont visibles
- Vérifiez que toutes les fonctionnalités fonctionnent sans souris2. Test de lecteur d'écran :
- Utilisez NVDA (Windows) ou VoiceOver (Mac)
- Naviguez par en-têtes, liens, et points de repère
- Confirmez que tout le contenu est annoncé correctement3. Vérification du contraste de couleur :
- Vérifiez le texte contre les couleurs d'arrière-plan
- Testez avec le mode contraste élevé activé
- Vérifiez que l'information n'est pas transmise par la couleur seule
Vérification automatisée
Configurez une surveillance régulière :# Créer un script simple pour exécuter des analyses AXE régulières #!/bin/bash drush axe:scan --url=https://votresite.com drush axe:scan --url=https://votresite.com/contact drush axe:scan --url=https://votresite.com/blogNous avons découvert que les équipes obtiennent les meilleurs résultats lorsqu'elles effectuent de rapides vérifications d'accessibilité sur chaque contenu avant la publication, plutôt que de faire de gros audits trimestriels.
Options de configuration avancées
Règles Editoria11y personnalisées
Créez des règles d'accessibilité spécifiques au site :// Ajouter au JavaScript de votre thème
ed11y.options.customTests = {
checkCustomElements: function(element) {
// Logique personnalisée pour vos composants spécifiques
const customComponents = element.querySelectorAll('.custom-component');
customComponents.forEach(component => {
if (!component.getAttribute('aria-label')) {
ed11y.results.push({
element: component,
test: 'custom-component-label',
type: 'error',
message: 'Les composants personnalisés doivent avoir des attributs aria-label'
});
}
});
}
};Intégration avec les flux de travail de contenu
Connectez la vérification d'accessibilité à votre flux de travail de publication :checkContent($node);
if (!empty($results['errors'])) {
// Stocker les erreurs pour révision par l'éditeur
$node->set('field_accessibility_issues', $results['errors']);
}
}Mesurer le succès
Suivez vos améliorations d'accessibilité avec ces métriques :Métriques automatisées :- Nombre de violations AXE (tendance à la baisse)
- Pourcentage d'images avec texte alternatif
- Ratios de contraste de couleur moyens
- Taux de conformité de la structure d'en-têtesMétriques d'expérience utilisateur :
- Taux d'achèvement des tâches pour les utilisateurs au clavier
- Rétroaction des utilisateurs de lecteur d'écran
- Billets de support liés aux problèmes d'accessibilitéMétriques d'affaires :
- Statut de conformité légale
- Engagement d'un public plus large
- Améliorations SEO grâce à une meilleure structure sémantique
