Mit über 50.000 kostenlosen Plugins ist das WordPress Plugin Directory das Einkaufszentrum für jeden WordPress-Nutzer. Hier findest du Plugins, die alle Features und Funktionalitäten für deine nächste Webseite abdecken. Trotzdem ist die Wahrscheinlichkeit groß, dass du kein Plugin findest, das genau die Funktion bietet, die dein Kunde ausdrücklich wünscht. Ob du es magst oder nicht, du wirst deinen lieblings Texteditor starten und mit dem Programmieren beginnen müssen. Aber hast du jemals über die Möglichkeit nachgedacht, deine Plugins mit der gesamten WordPress Community zu teilen?

Das Hauptziel dieses Beitrags ist es, mit euch Lesern die Vorteile der Verteilung von Plugins über das WordPress.org Repository zu erkunden. Ich werde kurz die Empfehlungen und Best Practices zusammenfassen, die du befolgen solltest, und dich dann durch die SVN Schlüsselkonzepte führen, die du kennen solltest, wenn du planst, ein Plugin im WordPress Plugin Verzeichnis zu veröffentlichen.

Warum das WordPress Plugin Verzeichnis?

Der erste Grund, dein Plugin im WordPress Plugin-Verzeichnis zu veröffentlichen, ist die kostenlose Nutzung einer Reihe von großartigen Tools und Services, wie z.B. Plugin-Beschreibung, Statistiken, aktive Installationen, Changelog, Support Forum und mehr. Außerdem werden die Nutzer immer dann benachrichtigt, wenn eine neue Version verfügbar ist und können das Upgrade direkt über den WordPress Plugins Screen ausführen. WordPress.org Plugins haben eine größere Sichtbarkeit in den Suchmaschinen und du kannst ein mächtiges Medium ausnutzen, um deine Identität zu fördern und deinen Ruf als Entwickler zu verbessern.

Wenn du kein großartiger Vermarkter bist oder keine Zeit dafür hast, kann das WordPress Plugin-Verzeichnis ein großartiger Weg sein, um kostenlosen Traffic und Augäpfel auf dein Plugin zu bekommen.

Das WordPress Plugin Verzeichnis
Das WordPress Plugin Verzeichnis

Ein weiterer guter Grund für die Veröffentlichung eines Plugins ist es, einen Beitrag zur WordPress Community zu leisten. WordPress ist eine kostenlose Software, mit einer riesigen Community, die tonnenweise Themes und Plugins kostenlos zur Verfügung stellt. Ein WordPress Plugin zu veröffentlichen ist der beste Weg, sich bei all diesen großartigen Menschen zu bedanken, die ihre Arbeit kostenlos zur Verfügung stellen.

Worauf du achten solltest

Bedenke, dass eine größere Sichtbarkeit deinen Ruf ruinieren könnte, wenn deine Plugins schlecht kodiert sind, wenn du sie nicht regelmäßig aktualisierst oder wenn du keinen schnellen und effizienten Support anbietest (definitiv, wenn du nicht als vertrauenswürdiger Entwickler agierst). Hier sind einige Schlüsselbegriffe, die du dir merken solltest.

Coding

Es gibt eine Menge über Coding zu sagen, und du wirst eine Menge nützlicher Lektüre da draußen finden. Aber wenn du ein WordPress Entwickler bist, ist der Codex deine Bibel und du solltest die Plugin Guidelines lesen, bevor du mit dem Coding beginnst. Hier ist meine persönliche Liste der Schlüsselkonzepte:

  • Halte deinen Code für Menschen lesbar. Dies ermöglicht es anderen Entwicklern zu verstehen, was dein Plugin macht, dir möglicherweise bei der Fehlersuche zu helfen und ihre eigenen Plugins auf deinem Code zu entwickeln. Um die Zusammenarbeit zwischen Entwicklern zu fördern, stellt der WordPress Codex die WordPress Coding Standards zur Verfügung, die eine Summe von Best Practices für jeden WordPress Entwickler sind.
  • Kommentiere deinen Code immer. Inline-Dokumentation ist eine großartige Ressource, die du niemals unterschätzen solltest. Es ermöglicht jedem, schnell zu verstehen, was eine Funktion macht, welche Argumente akzeptiert werden, welche Variable zurückkommt, etc. In den Kommentaren kannst du Links, Skriptversionen und andere Beschreibungen hinzufügen, die immer dann nützlich sind, wenn dein Skript von dir oder jemand anderem bearbeitet werden soll. Und ich sage gerne, dass WordPress-Leute eine lernende Gemeinschaft sind, und das Einhalten der Inline-Dokumentationsstandards ist eine großartige Möglichkeit, andere lernen zu lassen, was du bereits weißt.
  • Bevorzuge WordPress-Funktionen anstelle von PHP-Funktionen, wenn möglich. WordPress-Funktionen erlauben es dir, sicheren und effizienten Code zu bauen. Besonders wenn du Daten aus der Datenbank abrufen musst, ersparen dir API-Funktionen das Erstellen komplexer Abfragen, die höchstwahrscheinlich weniger sicher sind als die eingebauten WordPress-Abfragen. Es gibt eine Menge großartiger Entwickler hinter dem Core, und sie machen einen fantastischen Job, von dem wir profitieren können.

Eigenschaften

Auch wenn du für deine Arbeit nicht bezahlt wirst, solltest du deine Plugins wie Produkte betrachten, die du verkaufen willst. Du musst kein Marketingspezialist sein: Du musst nur wissen, dass dein Plugin in irgendeiner Weise einzigartig und/oder von ähnlichen Plugins unterscheidbar sein sollte. Gib deinem Plugin einen einprägsamen und aussagekräftigen Namen und einzigartige Funktionen, die die Leute sagen lassen „Ich brauche es!“. Und wenn dein Plugin Funktionen bietet, die bereits von anderen Plugins abgedeckt werden, konzentriere dich auf Zugänglichkeit und Benutzerfreundlichkeit, um den Nutzern einen Mehrwert zu bieten, der einen klaren Unterschied zwischen deinem Produkt und seinen Konkurrenten macht.

Support

Jedes Plugin, das über das Plugin Directory vertrieben wird, hat ein spezielles Forum, in dem Nutzer dich um Hilfe bitten werden. Gib klare Antworten auf die Fragen der Nutzer und hilf ihnen bei der Fehlerbehebung ihrer Probleme. Schnelle und angemessene Antworten werden entscheidend sein, um deinen Ruf als vertrauenswürdiger Entwickler aufzubauen. Berücksichtige jedes Thema und greife jede Information auf, die dir helfen könnte, dein Plugin zu verbessern.

Updates

Aktualisiere dein Plugin regelmäßig, schiebe kleine Änderungen wenn nötig, aber übertreibe es nicht. Zu viele Updates können deine Nutzer enttäuschen.

Lizenzierung

WordPress ist unter der GNU General Public Licence V2 veröffentlicht und die meisten Plugins sind unter der gleichen GPL-Lizenz veröffentlicht. Eigentlich ist es nicht zwingend erforderlich, das Plugin unter der gleichen Lizenz zu veröffentlichen, da jede kompatible Lizenz zugelassen ist. Trotzdem wird die GPLv2 empfohlen (lies mehr über die GPL Lizenzierung).

Um ein funktionierendes Beispiel für diesen Beitrag zu liefern, wurde das Plugin, das wir in 4 Handy WordPress Media Library Hacks seziert haben, im Directory veröffentlicht. Lade den ExIF Viewer herunter und öffne die Dateien in deinem Texteditor, dann gehe zurück zu diesem Beitrag und tauche in die Struktur des Plugins ein.

Die Plugin-Struktur

Dein Plugin wird im WordPress.org SVN Repository gespeichert. Jeder kann eine Kopie herunterladen, aber nur der Autor hat die Berechtigung, sich einzuloggen. Sobald du ein Plugin veröffentlicht hast, kannst du neue Dateien hinzufügen und bestehende Dateien auf deinem lokalen Rechner bearbeiten oder löschen und diese Änderungen dann auf den Server hochladen. Alle Änderungen werden von Subversion getrackt, so dass du später auf alte Versionen oder Revisionen zurückgreifen kannst.
Die SVN Repositories bieten vier Standardordner:

/assets/
/branches/
/tags/
/trunk/
  • Screenshots, Header und Icons kommen in assets
  • trunk ist das Verzeichnis, in dem du die Plugin-Dateien ablegen wirst
  • Abweichende Zweige des Codes gehen in branches
  • Plugin-Versionen werden in Tags gespeichert

Jedes Plugin muss aus mindestens zwei Dateien bestehen: der readme.txt Datei und dem Haupt PHP Skript. Optional kannst du eine Anzahl von Bildern (Assets) hinzufügen, die auf der Seite des Plugins angezeigt werden sollen.

Plugin Assets

Assets sind Plugin Header, Icons und Screenshots. Plugin Header sind die JPG oder PNG Bilder, die du oben auf der Plugin Seite sehen kannst. Die Dateinamen hängen von der Breite und Höhe des Bildes ab. Derzeit sind die folgenden Namen/Maße erlaubt:

  • Regular: banner-772×250.(jpg|png)
  • Retina: banner-1544×500.(jpg|png)

Icons sind quadratische Bilder mit den folgenden Namen/Abmessungen:.

  • icon-128×128.(jpg|png)
  • icon-256×256.(jpg|png)
  • icon.svg

Du solltest die SVG-Abmessungen nicht im Dateinamen angeben, da diese Bilder in jeder Größe skaliert werden können. Wenn du SVGs verwendest, musst du ein PNG-Icon als Fallback bereitstellen.

Screenshots sind Bilder, die im Inhalt der Plugin-Seite angezeigt werden. Erlaubt sind die Formate PNG und JPEG. Der Dateiname muss in Kleinbuchstaben geschrieben sein und die folgende Struktur einhalten:

  • screenshot-1.(jpg|png)
  • screenshot-2.(jpg|png)

Für jeden Screenshot solltest du eine Beschreibung in der Readme-Datei angeben. All diese Grafiken sollten in den Assets-Ordner im lokalen Verzeichnis deines Plugins hinzugefügt werden (mehr dazu, wie deine Plugin Assets funktionieren).

Ansprechende und konsistente Assets machen eine tolle Plugin Seite aus
Ansprechende und konsistente Assets machen eine tolle Plugin Seite aus

Die Readme.txt Datei

Du solltest dein Plugin mit einer readme.txt Datei und entsprechenden Headern im Hauptskript versehen.

Zuerst brauchst du eine readme.txt Datei mit den folgenden Informationen:

  • Plugin-Name
  • Mitwirkende: (eine Liste von wordpress.org userid’s)
  • Spenden-Link: http://example.com/
  • Tags: (Plugin-Tags)
  • Benötigt mindestens: (WordPress Version)
  • Getestet bis: (WordPress Version)
  • Stabiler Tag: (Plugin Version)
  • Lizenz: GPLv2 oder später (oder kompatibel)
  • Lizenz URI: https://www.gnu.org/licenses/gpl-2.0.html
  • Beschreibung:
  • Installieren
  • Bildschirmfotos
  • Changelog

Im Abschnitt Screenshots kannst du eine Beschreibung für jedes Bild hinzufügen, das du auf der Plugin-Seite einfügen möchtest. WordPress.org stellt die Standardvorlage für die Readme-Datei des Plugins zur Verfügung, die dir bei der Erstellung deiner Readme-Datei helfen wird. Außerdem kannst du den Readme Validator nutzen, um zu überprüfen, ob deine Datei korrekt ist.

Der Readme Validator gibt Hinweise und Warnungen zu Readme-Dateien aus
Der Readme Validator gibt Hinweise und Warnungen zu Readme-Dateien aus

Der Plugin Header Kommentar

Der Header-Kommentar sagt WordPress, dass eine Datei ein Plugin ist.
Wenn du dein Plugin nicht veröffentlichen willst, ist das einzige erforderliche Feld der Name des Plugins. Wenn du hingegen vorhast, das Plugin zu veröffentlichen, ist es umso besser, je mehr Informationen du hinzufügst. Hier ist eine Liste der verfügbaren Felder:

  • Plugin Name: (erforderlich) Der Name deines Plugins muss eindeutig sein. Suche vor der Veröffentlichung im Plugin-Verzeichnis nach Plugins mit dem gleichen Namen
  • Plugin URI: die Homepage des Plugins
  • Beschreibung: eine einzeilige Plugin-Beschreibung (weniger als 140 Zeichen)
  • Version: die aktuelle Plugin-Version (muss höher sein als die vorherige Version)
  • Autor: ein oder mehrere Autorennamen, getrennt durch Kommas
  • Autor URI: die Homepage des Autors
  • Lizenz: der Slug der Lizenz des Plugins (z.B. GPL2)
  • Lizenz URI: der Link zum vollständigen Text der Lizenz (z.B. https://www.gnu.org/licenses/gpl-2.0.html)
  • Text Domain: die Text Domain des Plugins
  • Domain Path: wo die Übersetzungsdateien zu finden sind (siehe Wie man sein Plugin internationalisiert)

Hier ist der Header-Kommentar eines der beliebtesten WordPress-Plugins:

<?php
/**
 * @package Akismet
 */
/*
Plugin Name: Akismet Anti-Spam
Plugin URI: https://akismet.com/
Description: Used by millions, Akismet is quite possibly the best way in the world to <strong>protect your blog from spam</strong>. It keeps your site protected even while you sleep. To get started: activate the Akismet plugin and then go to your Akismet Settings page to set up your API key.
Version: 3.3.2
Author: Automattic
Author URI: https://automattic.com/wordpress-plugins/
License: GPLv2 or later
Text Domain: akismet
*/

Veröffentlichung im WordPress Plugin Verzeichnis

Wenn du bereit bist, melde dich an und reiche dein Plugin ein.

Das erste Plugin-Release muss für eine manuelle Überprüfung hochgeladen werden
Das erste Plugin-Release muss für eine manuelle Überprüfung hochgeladen werden

Das Plugin wird manuell von den Mitarbeitern von WordPress.org überprüft. Dieser Prozess kann zwischen einem und zehn Tagen dauern. Wenn Probleme gefunden werden, erhältst du eine E-Mail, die dir erklärt, was falsch ist und was du tun solltest, um die Fehler zu beheben.

Der Revisionsprozess kann bis zu zehn Tage dauern
Der Revisionsprozess kann bis zu zehn Tage dauern

Sobald das Plugin genehmigt wurde, erhältst du eine E-Mail, die dir mitteilt, dass du Zugriff auf das SVN-Repository hast.

Eine E-Mail wird dich informieren, dass das Plugin genehmigt wurde
Eine E-Mail wird dich informieren, dass das Plugin genehmigt wurde

Im Moment ist das Plugin nicht zum Download verfügbar, aber du kannst Dateien über die Kommandozeile (oder jeden SVN-Client) hochladen, bearbeiten und löschen. Das Bild unten zeigt die aktuelle Plugin-Seite.

Die Plugin-Seite ist aktiv, aber das Plugin ist nicht zum Download verfügbar
Die Plugin-Seite ist aktiv, aber das Plugin ist nicht zum Download verfügbar

Das Plugin hochladen

Unsere erste Aufgabe ist es, die Plugin-Dateien in das SVN-Repository hochzuladen, aber zuerst brauchen wir einen lokalen Ordner, in dem wir die Plugin-Dateien speichern werden:

$ mkdir localdir

Jetzt können wir das Pre-Build Repository auschecken:

$ svn co https://plugins.svn.wordpress.org/plugin-name path/to/localdir

Wir bekommen die folgende Antwort:

> A    plugin-name/branches
> A    plugin-name/tags
> A    plugin-name/trunk
> Checked out revision 99999999.

A bedeutet, dass die Ordner aus dem zentralen Repository in den lokalen Ordner hinzugefügt wurden.
Der nächste Schritt ist das Hinzufügen von Dateien in den lokalen /trunk Ordner und das Hochladen in das Repository:

localdir/$ svn add trunk/*

Du wirst aufgefordert, dich zu authentifizieren. Sobald du eingeloggt bist, erhältst du die folgende Antwort:

> A    trunk/my-plugin.php
> A    trunk/readme.txt

Hinweis: Lege die Hauptplugin-Datei nicht in einen Unterordner von trunk, da dies die Downloads unterbrechen wird.

Checke nun die Änderungen wieder in das Repository ein:

localdir/$ svn ci -m 'First plugin version'

Und hier ist die endgültige Antwort:

> Adding trunk/my-plugin.php
> Adding trunk/readme.txt
> Transmitting file data .
> Committed revision 9999999.
Die Dateistruktur der lokalen Kopie des ExIF Viewers
Die Dateistruktur der lokalen Kopie des ExIF Viewers

Anschließend müssen wir die Plugin-Assets hinzufügen:

localdir/$ svn add assets/*

Dann checke die Änderungen erneut ein:

localdir/$ svn ci -m 'Assets upload'

Und das war’s! Springe auf die Seite deines Plugins und fange an, deine Arbeit zu bewerben!

Die letzte Seite des ExIF Viewer Plugins
Die letzte Seite des ExIF Viewer Plugins

Eine neue Version veröffentlichen

Bevor du die nächste Version veröffentlichst, musst du daran denken, das Feld Stable Tag in der Datei trunk/readme.txt und die Versionsnummer im Kommentar des Plugin-Headers zu aktualisieren. Wenn die neue Version bereit zur Veröffentlichung ist, kopiere deine Dateien in einen Unterordner von /tags und setze den Namen des Unterordners auf die Versionsnummer (z.B. 1.0.1):

localdir/$ svn cp trunk tags/1.0.1
> A tags/1.0.1

Checke dann die Änderungen ein:

localdir/$ svn ci -m "tagging version 1.0.1"
> Adding         tags/1.0.1
> Adding         tags/1.0.1/my-plugin.php
> Adding         tags/1.0.1/readme.txt
> Committed revision 999999.

Und das war’s! Die neue Version ist online.

Eine Datei bearbeiten

Gelegentlich kann es vorkommen, dass du kleinere Änderungen vornehmen musst, die keine neue Version erfordern. Aktualisiere zuerst die lokale Kopie des Repositorys:

localdir/$ svn up
> At revision 999999.

Bearbeite dann die Dateien und überprüfe die Änderungen:

localdir$ svn stat
> M       trunk/readme.txt

M bedeutet, dass diese Dateien geändert wurden.
Im Folgenden kannst du sehen, was sich zwischen den beiden Versionen geändert hat:

localdir$ svn diff

Zum Schluss musst du die Änderungen in das zentrale Repository einpflegen:

localdir$ svn ci -m "minor changes"
> Sending trunk/readme.txt
> Transmitting file data .
> Committed revision 999999.

Zusammenfassung

Egal, ob du dich entscheidest, eine Light-Version eines kommerziellen Plugins zu veröffentlichen, oder ob du das Plugin veröffentlichst, um einen Beitrag für die Community zu leisten, das WordPress.org Directory ist der beste Ort, um deine Arbeit zu verbreiten. Es verschafft dir eine breite Aufmerksamkeit und bietet eine Reihe professioneller Tools für die Verbreitung und Bewerbung deiner Plugins.

Wenn du das Gefühl hast, dass deine Verkaufs- und Marketingfähigkeiten nicht stark genug sind, solltest du dir unbedingt Bridget Willards “How To Market Your Plugin” ansehen, um mehr darüber zu erfahren, wie du deine Plugins besser verkaufen kannst.

Hast du diese Möglichkeit schon einmal in Betracht gezogen? Teile deine Erfahrungen mit uns unten.

Carlo Daniele Kinsta

Carlo is a passionate lover of webdesign and front-end development. He has been playing with WordPress for more than 20 years, also in collaboration with Italian and European universities and educational institutions. He has written hundreds of articles and guides about WordPress, published both on Italian and international websites, as well as on printed magazines. You can find him on LinkedIn.