Richtlinien für Erweiterungen und Stile im Plugin-Store

Alle im Plugin-Store eingestellten Erweiterungen und Stile unterliegen einigen grundsätzlichen Mindestanforderungen, die primär darauf abzielen, Probleme beim Einsatz zu vermeiden. Die Dateien werden vor der Veröffentlichung in zwei Schritten überprüft, eine erste automatische Überprüfung arbeitet auf rein formalen Gründen und soll einfache technische Mängel aufdecken. Im zweiten Schritt erfolgt eine manuelle Sichtung durch einen WoltLab Mitarbeiter, mit dem Augenmerk auf Fehler und potenzielle Probleme beim Betrieb.

Im Falle eins negativen Prüfungsergebnisses erhalten Sie eine Benachrichtigung mit den Beanstandungen und – falls praktikabel – auch konkrete Hinweise zur Behebung.

Vorabprüfung auf technische Mängel

Im Rahmen eines automatisierten Prüfprozesses wird die formale Korrektheit der hochgeladenen Datei überprüft:

  • Sind alle enthaltenen PHP- und XML-Dateien formal korrekt bzw. enthalten keine Syntax-Fehler, die eine Funktionalität unmöglich machen?
  • Enthält das Archiv alle Dateien, die gemäß der package.xml für eine Installation benötigt werden?
  • Sind keine überflüssigen Dateien, z. B. versteckte Dateien von Windows oder macOS, im Archiv enthalten, die bei der Installation problematisch sein können?
  • Sind die Angaben zur Kompatibilität vollständig bzw. formal korrekt?
  • Die Mindestanforderug von WoltLab Suite Core (com.woltlab.wcf) muss eine Version sein, die von Sicherheitsaktualisierungen unterstützt wird.

Prüfung durch einen Mitarbeiter der WoltLab GmbH

Wir überprüfen alle hochgeladenen Dateien manuell auf Fehler und insbesondere auf mögliche Sicherheitsprobleme. Der individuelle Programmierstil wird dabei nicht bewertet, unser oberstes Ziel ist es, Probleme frühzeitig zu erkennen und in Zusammenarbeit mit dem Hersteller zu lösen.

Die wichtigsten Kriterien die von uns überprüft werden:

  • Sicherheitsprobleme stehen klar an erster Stelle. Diese können fehlerhaft verarbeitete Parameter oder Datenbankabfragen sein, aber auch unzureichende Berechtigungsüberprüfungen oder XSS-Lücken im Template fallen darunter.
  • Erweiterungen müssen grundsätzlich lauffähig sein, angefangen von der Installation bis hin zu einem groben Funktionstest. Die Benutzeroberfläche sollte sich dabei grundlegend an der Bedienung der restlichen Software orientieren, besonders im Sinne der Benutzerfreundlichkeit.
  • Nutzung der bestehenden APIs, beispielsweise die Verwendung von Guzzle für die Durchführung von HTTP-Anfragen. Die bestehenden APIs decken bereits viele unterschiedliche Fälle automatisch ab, etwa die Unterstützung für Proxy-Server, und sorgen für ein konsistentes Verhalten.
  • Überflüssiger Programmcode, der zu Testzwecken eingebaut wurde oder fest integrierte API-Codes, die zum Test verwendet wurden und nicht für die normale Installation geeignet sind.
  • Grobe Effizienz-Probleme, bei denen aus unserer Erfahrung bereits absehbar ist, dass diese abseits von überschaubaren Testdaten relativ schnell zu Engpässen führen, insbesondere sehr ineffiziente Datenbankabfragen. Oftmals reichen bereits minimale Änderungen, um diese Probleme aus der Welt zu schaffen.
  • Unvollständige Übersetzungen, insbesondere die englische Übersetzung ist nicht nur für einen größeren Kundenkreis notwendig, sondern wird oftmals auch als Grundlage für die Übersetzung in andere Sprachen verwendet. Mit einfachen Werkzeugen, beispielsweise dem Dienst von deepl.com, lassen sich mit wenig Aufwand bereits gute Übersetzungen erreichen, die eine ausreichende Basis darstellen.
  • Sichtbare Copyright-Vermerke sind bei Stilen auf allen Seiten und bei Apps auf den App-eigenen Seiten zulässig. Sonstige Erweiterungen dürfen derartige Hinweise nur auf eigenständigen Seiten, die von der Erweiterung selbst stammen, setzen.
  • Die implizite oder explizite Installation von Paketservern ist generell unzulässig.

Eine Ablehnung erfolgt üblicherweise nur, wenn die Prüfung schwerwiegende Probleme zu Tage gebracht hat, die einem ordnungsgemäßen Betrieb entgegenstehen. Bei kleineren, unkritischen Mängeln erfolgt üblicherweise eine Freischaltung und zusätzlich eine Benachrichtigung, bei der wir die gefundenen Probleme aufzeigen, beispielsweise kleinere Tippfehler. Unser oberstes Ziel ist es, eine möglichst objektive Prüfung vorzunehmen und den Hersteller bei seiner Arbeit zu unterstützen.

Wir behalten uns in Ausnahmefällen vor, Erweiterungen abzulehnen, wenn deren Funktionsweise bereits ohne Ausnahme vollständig mit der bestehenden Software durch den Seitenbetreiber zu realisieren sind.

Anforderungen an den Eintrag im Plugin-Store

Die Beschreibung für Erweiterungen sollte die Funktionsweise bestmöglich wiedergeben, damit sich Kunden vorab mit dem Umfang vertraut machen können. Dabei ist darauf zu achten, dass es eine deutsche und eine englische Fassung geben muss, die inhaltlich identisch sind. Der Einsatz von Screenshots wird – soweit im Einzelfall sinnvoll – bei Erweiterungen empfohlen, um einen besseren Eindruck zu vermitteln und Funktionen ansprechend zu präsentieren. Bei Stilen sind Screenshots verpflichtend und sollten aussagekräftig genug sein, um bereits vorab einen ausreichenden Eindruck zu bekommen.

Verweise auf Drittseiten, einschließlich der eigenen Website, können am Ende des Textes gesetzt werden, wenn diese für die Erweiterung bzw. den Stil von Bedeutung sind. Dies kann beispielsweise eine Live-Demo sein oder Anleitungen bzw. Hilfestellung für Probleme.

Die Nutzung der Beschreibung zu Werbezwecken für kommerzielle Angebote außerhalb des Plugin-Stores ist ausgeschlossen, insbesondere die Bewerbung von Drittshops ist generell unzulässig. Ein Verweis auf dazugehörige Erweiterungen im Plugin-Store, beispielsweise Zusatzpakete für den Eintrag, können gesetzt werden.

Eigene Lizenzbestimmungen können entweder über die Texteingabefelder oder über einen externen Link hinterlegt werden. Bei einem externen Link muss dieser unbedingt zu einer reinen Textausgabe (Typ text/plain) führen und falls der Link zu einer TLS-verschlüsselten Adresse (https) führt, muss ein gültiges Zertifikat verwendet werden.

Freischaltung für die WoltLab Cloud

Die Einstufung, ob Erweiterungen bzw. Stile in der WoltLab Cloud installiert werden können, erfolgt direkt durch WoltLab. Die Prüfungskriterien sind rein technischer Natur und darauf ausgelegt, die Stabilität und Sicherheit der WoltLab Cloud-Plattform zu gewährleisten.

  • Kompatibilität mit der aktuellen Version der WoltLab Suite.
  • Ausgehende HTTP(S)-Verbindungen laufen konsequent über Guzzle oder berücksichtigen die Proxy-Konfiguration korrekt.
  • Keine ausgehenden Verbindungen zu abweichenden TCP- oder UDP-Ports.
  • Kein Massenversand von E-Mails.
  • Keine Überschneidung mit Privilegien die im Rahmen eines Managed Betriebs unter Vorbehalt stehen, beispielsweise eine direkte Datenbankverwaltung.

Verkauf von Erweiterungen und Stilen im Plugin-Store

Der Preis wird durch den Anbieter selbst festgelegt, zulässig sind Nettopreise im Bereich von minimal EUR 1,67 bis maximal EUR 168,06. Der Endkundenpreis versteht sich zzgl. des jeweils gültigen Mehrwertsteuersatzes, beispielsweise 19% für Kunden aus Deutschland.

Vom Nettopreis werden 25% als Provision von der WoltLab GmbH einbehalten, die Transaktionskosten für die genutzte Zahlungsweise werden von der WoltLab GmbH übernommen. Im Falle von Aufschlägen für die vom Kunden gewählte Zahlungsmethode werden diese auf den Bruttopreis aufgeschlagen. Der Anbieter erhält stets 75% des Nettopreises ohne Abzug ausgezahlt.

Rechenbeispiel:

Bruttopreis für Kunden aus Deutschland: EUR 9,99 (inkl. 19% MwSt.)

Nettopreis: EUR 8,395

Anbieter erhält pro Verkauf: EUR 6,30 (Kaufmännisches Runden auf den vollen Cent)

Die Auszahlung erfolgt monatlich, vorausgesetzt das Händlerkonto weist ein Guthaben von mindestens EUR 30,- auf.

Weitere Informationen zum Verkauf von Erweiterungen: