Vorgaben an Themes
Stand: 7. Oktober 2024
Für Themes, welche auf der zentralen CMS Instanz der FAU eingesetzt werden sollen, müssen einige Rahmenbedingungen erfüllt sein.
Themes, welche diese Bedingungen nicht einhalten, können nicht auf der zentralen CMS Instanz eingesetzt werden.
Grundlegende Anforderungen
- Für das jeweilige Theme muss stets ein fachkompetenter Ansprechpartner vorhanden sein, der im Falle von Problemen oder Fehlern zeitnah reagiert.
- Das Theme muss als Mindestanforderung kompatibel zur jeweils aktuellen WordPress- und PHP-Version sein. (WordPress-Version 6.6, PHP-Version 8.2)
- Alle Ausgaben, die durch das Theme erzeugt werden, müssen stets konform zur WCAG 2.2 in der Konformitätsstufe AA sein.
- Die Bereitstellung des Themes muss auf WordPress (https://de.wordpress.org/themes/) bzw. auf einem öffentlichen GitHub-Repository (https://github.com/) oder auf einer öffentlichen Gitlab-Repository erfolgen. Eine manuelle Aktualisierung über uns zugesandte ZIP-Dateien ist nicht möglich.
- Die programmiertechnische Fehlerfreiheit von Themes ist zu gewährleisten:
- Das Theme wird mittels des Plugins Theme Check geprüft. Der Test mit Hilfe dieses Plugins sollte keine Fehler aufzeigen. Ausnahmen gelten für Warnungen und Fehlermeldungen hinsichtlich von versteckten Dateien (bspw. für die Datei .gitignore).
- Themes sollten stets auf einer WordPress-Installation entwickelt und getestet werden, bei der ein DEBUG-Modus so eingestellt ist, dass er Warnung ausgibt. Kein Theme darf im produktiven Betrieb Warnings oder gar Fatal Errors liefern.
- Hinsichtlich der Verwendung von Bibliotheken und Buildprozessen (Composer u.a.) ist zu beachten:
- Bei der Bereitstellung von JavaScript-Dateien ist darauf zu achten, ob etwaige JavaScript-Bibliotheken nicht bereits von WordPress selbst zur Verfügung gestellt werden. In diesem Fall sind die von der WordPress-Instanz zu nutzen. Keinesfalls darf beispielsweise eine eigene jQuery-Bibliothek vom Plugin nochmals mit- und ausgeliefert werden, wenn diese bereits zuvor vom Theme oder einem anderen Plugin ebenfalls enqueued wurde.
- Werden JavaScript-Dateien bereitgestellt, sind diese für die Nutzung im produktiven Einsatz in minifizierter Form bereitzustellen und zur Entwicklung im ungepackten Original.
- Werden Schriften oder Bibliotheken eingebunden, müssen diese im Source des Plugins vorhanden sein und von dort „lokal“ eingebunden werden. Die Verwendung von externen CDNs (wie beispielsweise
fonts.google.com
) ist nicht zulässig. - Für alle verwendeten Bestandteile der Themes von Dritten sind nur solche Komponenten zu nutzen, die über offene, bzw. freie Lizenzen zur Verfügung gestellt wurden. Dies gilt insbesondere für Grafiken, Schriften, JavaScript-Bibliotheken und andere Programmteile.
- Werden CSS-Dateien bereit gestellt, die einen Umfang von mehr als 50 Codezeilen (ohne Kommentare) haben, ist zwingend ein Präprozessor (bevorzugt SASS) zu verwenden. Die CSS-Dateien sollen mit Hilfe von SASS minifiziert werden. Werden Vendor-Codes bereit gestellt, sind diese bei der Entwicklung des Themes über einen Autoprefixer zu erstellen. Zur Abwärtskompatibilität werden Browser der letzten drei Jahre berücksichtigt. Eine weiter zurückgehende Kompatibilität ist nicht erforderlich.
- Das Theme muss grundsätzlich auch ohne zusätzliche Plugins lauffähig sein. Sollte das Theme auf Plugins basieren oder durch diese signifikant unterstützt werden, ist darauf zu achten, dass diese nicht redundant zu bereits vorhandenen Plugins sind. Diese Plugins müssen den für Plugins definierten Bedingungen folgen.
- Neue Themes, die nach dem 1.1.2025 bereitgestellt werden, sollten grundsätzlich Block Editor Themes sein. Sogenannte Classic Themes sind nur noch in Ausnahmefällen zu verwenden.
- Themes, die eigene Pagebuilder beinhalten oder als Plugin voraussetzen, werden nicht zugelassen. Ebenso sind Plugins unzulässig, die über eigene Plugin-Installer verfügen.
Hinweise und Bedingungen zur Nutzung des Block-Editors „Gutenberg“ sowie des WYSIWYG-Editors TinyMCE
WordPress wird in der Betriebsform als CMS im Einsatz in Einrichtungen verwendet. Demgemäß muss die Ausgabe stets das Corporate Design berücksichtigten.
Der Einsatz von Blockelementen aus dem Block-Editor Gutenberg einerseits, aber auch von sogenannten „Pagebuilder“-Plugins bei Nutzung des bisherigen TinyMCE Editors ist daher entsprechend so einzuschränken, dass den Autoren und Redakteuren hierdurch das Design nicht umgehen können.
Aufgrund des hohen Schulungsaufwand bei der Bedienung des Block-Editors ist derzeit nur TinyMCE-Editor frei geschaltet. Bei Freigabe des Block-Editors wird dieser für alle Redakteure und Autoren optional und frei wählbar sein. Aus diesem Grund sind alle neuen, durch ein neues Theme bereit gestellten Blöcke, zusätzlich mittels Shortcodes oder Widgets auch für den bisherigen TinyMCE Editor zugänglich zu machen.
Betriebsbedingungen auf der CMS-Instanz der FAU
Bei einem Einsatz auf der zentralen CMS-Instanz der FAU herrschen folgende Arbeitsbedingungen:
- Im Falle eines anstehenden WordPress-Updates hat dieses stets Priorität gegenüber dem Funktionieren von Plugins und Themes. Bei einem WordPress-Update erfolgt keine vorherige Abstimmung mit Theme- oder Plugin-Entwicklern, ob das Update durchgeführt werden kann. Stattdessen erwarten wir von allen Theme- oder Plugin-Entwicklern, dass sich diese über die anstehenden Updates über die herkömmlichen Publikationskanäle von WordPress informiert halten und bereits vor den Veröffentlichung von neuen Versionen die jeweiligen Themes und Plugins daraufhin ertüchtigten.
- Plugins und Themes, die nach einem WordPress-Update nicht mehr funktionieren oder Fehler liefern, können ohne Vorwarnung deaktiviert werden.
- Plugins und Themes, die länger als ein Jahr nicht mehr aktualisiert wurden oder bei denen der Entwickler nicht mehr erreichbar ist, können jederzeit und ohne Vorwarnung deaktiviert werden.
- Bei der Verwendung von Namenspaces dürfen die folgenden Präfixe nur nach Rücksprache mit dem RRZE verwendet werden:
rrze-
,utn-
,fau-
undcms-
.