Mit WPML lassen sich mehrsprachige Websites umsetzen – inklusive Navigationen, über die die Nutzer dann auf der Website die Sprache umschalten können. In diese Navigation schreibt WPML einerseits allerdings mehr, als notwendig wäre – und gelichzeitig ein bisschen zu wenig.
Die einzelnen Links der Sprachnavigation bekommen die ARIA-Rolle role=“menuitem“ zugewiesen. Elemente, die so ausgezeichnet sind, müssen allerdings eigentlich von einem Element mit der Role „menu“ oder „menubar“ umklammert werden. Das macht WPML leider nicht.
Der Bug ist bekannt – und Stand 2025 auch an das Entwicklerteam von WPML weitergeleitet – bisher aber leider nicht behoben. In der Regel stört dieser Bug auch nicht weiter. Allerdings wird der Bug bei der Prüfung auf WCAG moniert.
Die WCAG (Web Content Accessibility Guidelines) setzen voraus, dass alle mit „menuitem“ markierten Elemente auch von einem Element mit der Role „menu“ oder „menubar“ umklammert sein müssen. Insbesondere Screenreader, die diese Anweisung interpretieren und die Website so auch für Menschen mit Einschränkungen besser benutzbar machen, ist das vorhandensein der einen Role und das Fehler der anderen verwirrend.
Man könnte nun versuchen, die Elemente korrekt mit einem Container mit der Role „menu“ oder „menubar“ zu umschließen. Das kann aber weitere Schwierigkeiten mit sich bringen: dann müsste es auch mit der Pfeiltasten-Navigation klappen, die Navigation müsste sauber ins Fokusmanagement eingebunden werden und das Escape-Verhalten müsste funktionieren. Einfacher ist es daher, die (überflüssige) Auszeichnung role=“menuitem“ nachträglich zu entfernen.
Ameinfachsten lässt sich die Auszeichnung role=“menuitem“ mit Hilfe eines kleinen PHP-Snippets in der functions.php entfernen – zum Beispiel so:
add_action('template_redirect', function () {
ob_start(function ($html) {
return str_replace(' role="menuitem"', '', $html);
});
});
Im Fachjargon lässt sich das dann so beschreiben:
„Die durch WPML gesetzte ARIA-Rolle menuitem ist semantisch falsch und wurde entfernt, da die Sprachweiche kein ARIA-Menü im Sinne der WAI-ARIA Authoring Practices darstellt.“