Editoria11y für Drupal

Kernfunktionen

Das Drupal-Modul verbindet die Prüfbibliothek mit dem redaktionellen Backend und ergänzt zahlreiche serverseitige Werkzeuge für Berichte, Governance und Konfiguration

Drupal-Editor mit Inline-Hinweisen
Probleme werden sowohl beim Laden des Frontends als auch beim Tippen in CKEditor und Gutenberg erkannt.
Hinweis zeigt an, dass ein Link nur „Hier klicken
Tooltips erhalten Schaltflächen, um in den Editor zu wechseln, den Hinweis zu ignorieren (für den aktiven Benutzer) oder als OK zu markieren (für alle Benutzer). Wiederkehrende Hinweise bieten seitenweite oder websiteweite Aktionen.
Oberfläche des benutzerdefinierten Test-Builders mit Feldern für Hinweistitel und -inhalt sowie Elementselektoren und Ausschlüssen.

Das CSA-Untermodul ergänzt:

  • Einen Builder für eigene Tests
  • Über 40 Entwicklertests
  • Kontrastprüfung
  • Website-Crawler
  • Lesbarkeitsanalyse
  • Getrennte Konfigurationen für Entwickler/Editoren
Berichtsdashboard mit aktuellen Problemen und Seiten mit den meisten Problemen.
Ein websiteweites Dashboard bietet filterbare und exportierbare Berichte zu Hinweisen und Ausblendungen.

Installation und wichtige Einrichtungsschritte

Der gebündelte Installer auf Drupal.org enthält mehrere Module:

  • Editoria11y: der zentrale Inhaltsprüfer und das Dashboard.
  • Editoria11y CSA: Entwicklertests und Dashboard-Verwaltungswerkzeuge.
  • Editoria11y Export: CSV-Berichtswerkzeuge.

Installieren Sie es wie jedes andere Modul und führen Sie dann diese wichtigen Schritte durch:

  1. Berechtigungen prüfen. Vertrauenswürdige Autoren sollten „Als OK markieren", „Als ignoriert markieren" und „Dashboard anzeigen" haben.
  2. Wichtige Seiten auf wiederkehrende oder wenig hilfreiche Hinweise prüfen. Entweder im Tooltip als OK markieren oder die Konfiguration anpassen, um Elemente per Selektor zu ignorieren.
  3. Nach schwer sichtbaren Hinweisen suchen – außerhalb des Bildschirms, abgeschnitten, hinter anderen Elementen oder auf verborgenen Elementen. Verwenden Sie die Tipps unter „Hinweispositionierung korrigieren" weiter unten.
  4. Wenn die Website bereits Inhalte hat und Sie ein CSA-Abonnement haben, besuchen Sie den Dashboard-Tab „Neu prüfen" und crawlen Sie die Website, um die Seitenberichte vorzuladen. Dies ist optional, aber ältere Seiten erscheinen erst in Berichten, wenn sie gecrawlt oder von einem angemeldeten Benutzer besucht wurden.

Hier finden Sie eine Videoeinführung zu den Konfigurationsoptionen (v2.4).

Wenig hilfreiche Hinweise ausblenden

Gute Konfigurationen unterdrücken wenig hilfreiche Hinweise, sodass sich Autoren auf die Probleme konzentrieren können, die sie tatsächlich beheben sollten.

Sie können Tests zwar ganz ausschalten, aber in der Regel ist es besser, Hinweise für bestimmte Elemente oder Seiten auszublenden.


Bei jedem Testdurchlauf erfasst Editoria11y eine Menge von Elementen anhand der Einstellung „Inhalt in diesen Containern prüfen" und filtert diese dann mehrfach. So sieht ein Testdurchlauf aus:

  1. Prüfung abbrechen, wenn die Konfiguration die Prüfung auf dieser Seite oder für diesen Benutzer verhindert.
  2. Sammeln von Elementen in angegebenen Seitenbereichen, z. B.:
    body > *:not('.ed11y-element')
    Für Editoria11y-CSA-Benutzer sind dies die Bereiche auf dem Tab Entwicklertests.
  3. Entfernen von Elementen, die mit Ignore-Selektoren übereinstimmen, z. B.:
    .widgets, .utility-menu
    Für Editoria11y-CSA-Benutzer sind dies die Selektoren auf dem Tab Entwicklertests.
  4. Tests ausführen und Ergebnisse mit dem Dashboard synchronisieren.
  5. Wenn die getrennte Konfiguration aktiv ist und der Benutzer ein Content-Editor ist, Entwicklerergebnisse filtern:
    • Entfernen von Ergebnissen aus Tests, die auf „Nur Entwickler" eingestellt sind.
    • Entfernen von Ergebnissen für Elemente außerhalb der angegebenen Inhaltsbereiche, z. B.:
      main, footer
    • Entfernen von Ergebnissen für Elemente, die mit den Inhalts-Ignore-Selektoren übereinstimmen.
    Beachten Sie, dass es keine zweite „Sammel"-Phase gibt. Die Seitenbereiche für Entwickler müssen die Inhaltsbereiche einschließen.
  6. Panel öffnen und Hinweise zeichnen, wenn die Konfiguration einer Auto-Öffnen-Einstellung entspricht.

Hinweise ausblenden

Tests können in der Bibliothek als Fehler oder Warnungen („manuelle Prüfungen") konfiguriert werden. Warnungen können ausgeblendet werden. Am Fuß jedes Tooltips stehen zwei Arten von Ausblendungen zur Verfügung:

  • „Ignorieren" wird als Benutzerpräferenz gespeichert: Der Hinweis ist jetzt für den aktuellen Benutzer ausgeblendet, aber nur für diesen Benutzer.
  • „Als OK markieren" blendet den Hinweis für alle Benutzer aus.

Ob ein Benutzer einen Hinweis ausblenden kann, wird auf Rollenebene in den Drupal-Benutzerberechtigungen gesteuert. Die meisten Autoren sollten Hinweise ausblenden dürfen. Es hat keinen Sinn, jemandem eine manuelle Prüfung zuzuweisen, wenn er das Element nicht als geprüft markieren kann.

Elemente ignorieren

Diese beiden Konfigurationseinstellungen sind die wichtigsten!

Setzen Sie das erste auf alle Teile des Seiteninhalts, den Content-Autoren bearbeiten können. Wenn sie z. B. den main-Inhaltsbereich, .sidebar und .footer-column-two bearbeiten können, setzen Sie diese Selektoren als Ihren Inhaltsprüfbereich.

Verwenden Sie das zweite, um Teilbereiche „auszuschließen". Wenn main z. B. verschiedene Widgets und Einbettungen enthält, die nur Entwickler ändern können, listen Sie diese auf: .widget-1, .social-embed.

Wenn Sie die getrennte Konfiguration verwenden, sehen Sie ein ähnliches Einstellungspaar auf dem Tab „Entwicklertests":

Entwicklerprüfbereich

Das Wichtigste bei den Entwicklerprüfbereichen ist, dass sie nicht unabhängig von den Inhaltsprüfbereichen sind. In einer getrennten Konfiguration werden die Entwicklerbereiche geprüft und diese Ergebnisse dann gefiltert, um den Inhaltsbereichen zu entsprechen. Alle Bereiche, die für Entwickler ausgeschlossen sind, werden auch für Content-Editoren ausgeschlossen. Schließen Sie editierbare Inhaltsbereiche nicht aus!

Einige Tests erlauben eine präzisere Konfiguration, um nur bestimmte Hinweise bei betroffenen Elementen auszublenden. Zu finden unter:

  • Inhaltsprüfungen: Zu prüfende Links
  • Inhaltsprüfungen: Zu prüfende Einbettungen
  • Inhaltsprüfungen: Dynamische und Shadow-Inhalte erkennen
  • Entwicklertests: Kontrast

Für bestimmte Seiten oder Benutzer ausblenden

Am einfachsten geht dies, indem Sie CSS-Klassen oder IDs an diese Optionen übergeben:

Die erste Option verhindert, dass Prüfungen ausgeführt werden, und die Symbolleiste wird nicht angezeigt.

Die zweite startet den Prüfer minimiert und markiert (für den aktuellen Benutzer) alle Probleme automatisch als „Ignoriert", auch wenn es sich um Fehler handelt. Dies ermöglicht es den Tests, zu laufen und das Dashboard zu aktualisieren, ohne den Benutzer zu stören.

Wenn Sie damit steuern möchten, welche Benutzer den Prüfer sehen, müssen Sie möglicherweise Ihr Theme anpassen, um eine Klasse auszugeben, z. B. .user-247

Websiteweite Ergebnisse verwalten

Crawling und Ergebnisse aktualisieren

Editoria11y ist ein Echtzeit-Überwachungswerkzeug, kein Crawler. Seine websiteweiten Berichte werden aktualisiert, wenn Autoren Seiten aufrufen, sodass regelmäßiges Crawling in der Regel nicht erforderlich ist. Das CSA-Modul enthält einen Crawler, der aber nur in diesen drei Situationen benötigt werden sollte:

  1. Bei der erstmaligen Installation von Editoria11y auf einer bestehenden Website mit vielen Seiten. Seiten müssen erst besucht werden, bevor sie im Dashboard erscheinen, sodass ein schneller erster Crawl Zeit spart.
  2. Größere Aktualisierungen von Themes oder Modulen können Probleme auf vielen Seiten beheben (oder verursachen), die erst nach dem Besuch oder Crawling sichtbar werden.
  3. Massenaktionen in der Admin-Oberfläche wie das Löschen von Seiten oder Weiterleitungen hinterlassen oft Ergebnisse von Seiten, die nicht mehr existieren oder verschoben wurden. In diesen Fällen hilft es, die Wartungsaktionen des „Aktualisieren"-Tabs zu nutzen, um Seiten-URLs zu aktualisieren sowie gelöschte Seiten zu erkennen und zu entfernen.

Während eines Crawls verlassen keine Daten Ihre Website. Der CSA-Crawler ist kein Cloud-Werkzeug; er verwendet Ihren Browser, um die Seiten Ihrer eigenen Website zu laden und zu prüfen. Der Nachteil dieses Ansatzes ist, dass Browser Hintergrundtabs pausieren. Sie müssen Ihren Computer während eines Crawls eingeschaltet und wach halten. Öffnen Sie ein neues Fenster für den Crawler und lassen Sie es als Vordergrund-Tab in diesem Fenster geöffnet. Sie können in einem anderen Fenster weiterarbeiten. Der Crawler aktualisiert seine Schätzung nach jedem Seiten-Batch.

Berichte anzeigen

  • Aktuell ermöglicht die Erkundung einzelner Hinweise. Damit können Sie z. B. nach allen Vorkommen desselben Hinweistyps filtern, sehen, welche Hinweise in neueren Inhalten häufig auftreten, oder welche Autoren immer noch denselben Fehler machen.
  • Seiten zeigt Hinweiszählungen pro Seite, nach Seite gruppiert. Damit können Sie Seiten mit den meisten Problemen finden und nach Seitenattributen wie Inhaltstyp und Veröffentlichungsstatus filtern.
  • Hinweise zeigt Probleme nach Typ.
  • Ausblendungen ermöglicht die Überwachung, ob Autoren korrekt ausblenden, und bietet „Zurücksetzen"-Schaltflächen zum Wiederherstellen ausgeblendeter Hinweise.
  • Export enthält Versionen der Seiten-, Hinweis- und Ausblendungsberichte, die gefiltert werden können, um CSV-Downloads vorzubereiten. Bereitgestellt vom CSV-Export-Untermodul
  • Aktualisieren enthält Dashboard-Verwaltungswerkzeuge zum Entfernen von Hinweisen von gelöschten Seiten, Entfernen von Hinweisen von parametrisierten Pseudo-Seiten wie /search?query=beispiel, Aktualisieren gespeicherter Seitentitel und URLs sowie Ausführen eines manuellen Crawls. Bereitgestellt vom CSA-Untermodul

Verborgene oder außerhalb des Bildschirms liegende Hinweise korrigieren

Das Modul stellt Felder für zwei Konfigurationsoptionen der Bibliothek bereit, um die Platzierung von Hinweisen zu ändern:

Manche Themes haben Spalten oder Widgets, die horizontalen oder vertikalen Overflow ausblenden. Die Bibliothek erkennt automatisch, wenn ein Toggle außerhalb des sichtbaren Teils der Seite fallen würde. Wenn Sie der Bibliothek mitteilen, dass bestimmte Container Overflow ausblenden, versucht sie auch, Hinweise für Elemente in diesen Containern innerhalb ihrer Grenzen zu positionieren.

Manche Themes haben Widgets, die die Sichtbarkeit von Inhalten umschalten, wie Akkordeons, Tabs und Diashows. Hinweise in diesen Elementen werden ebenfalls verborgen. Wenn Sie eine Liste von Selektoren für diese Widgets bereitstellen, pausiert Editoria11y kurz, wenn ein Benutzer versucht, mit einer Vor- oder Zurück-Schaltfläche zu diesen Hinweisen zu springen. Drupal-Themes und -Module können dann den Anweisungen aus dem Bibliotheksabschnitt zum Umgang mit verborgenen Inhalten folgen, um die verborgenen Inhalte sichtbar zu machen.

Eigene Konfiguration schreiben

In PHP: Das Drupal-Modul stellt einen hook_editoria11y_alter_config bereit, um den Inhalt von drupalSettings.editoria11y in einem Modul oder Theme zu ändern. Zum Beispiel:

Das Ändern von drupalSettings hilft nur, wenn das Modul-JS bereits so eingerichtet ist, dass es diesen Wert an die Bibliothek weitergibt. Um zusätzliche Parameter hinzuzufügen, müssen Sie das JS-options-Objekt direkt ändern. Das Modul prüft auf eine globale JS-Variable namens editoria11yOptionsOverride. Wenn diese gesetzt ist, übergibt es das options-Objekt an eine von Ihnen in Ihrem Modul oder Theme bereitgestellte editoria11yOptions-Funktion. Sie können nun alle Bibliotheksparameter setzen.

Eigene Tests schreiben

Setzen Sie zunächst in der Modulkonfiguration die Option „Benutzerdefinierte Tests" auf 1, damit das Modul auf die Tests wartet.

Erstellen Sie dann eine Drupal-JS-Bibliothek mit Ihren Tests in Ihrem Theme oder Modul, anhand des Bibliotheksleitfadens zum Schreiben benutzerdefinierter Tests.

Hier ist ein funktionierendes Beispiel aus Princeton für einen benutzerdefinierten Test, der Safe Links markiert. Beachten Sie, dass er über Drupal.Ed11y. auf die Editoria11y-Klasse zugreift.

Hilfe erhalten

Auf der Seite Kontakt finden Sie Optionen für Community-Support. @itmaybejj ist im Drupal Slack in der Regel online, wenn in der westlichen Hemisphäre die Sonne scheint.

Die meisten CSA-Beitragsstufen beinhalten ein jährliches Check-in-Gespräch, das auch direkte Unterstützung bei Einrichtung und Konfiguration umfassen kann.