WordPress ist das weltweit beliebteste Content-Management-System (CMS). Seine starke Erweiterbarkeit beruht in hohem Maße auf seiner Plugin-Architektur. Wenn Sie feststellen, dass die vorhandenen Funktionen nicht Ihren Anforderungen entsprechen, ist die Entwicklung eigener Plugins die beste Option. Dies ermöglicht es Ihnen, nicht nur konkrete Probleme zu lösen, sondern auch einen tiefen Einblick in die Funktionsweise von WordPress zu gewinnen. Diese Anleitung führt Sie durch den gesamten Prozess der Entwicklung Ihres ersten WordPress-Plugins – von der Einrichtung der Umgebung über die Programmierung bis hin zur endgültigen Veröffentlichung.
Vorbereitung der Entwicklungsumgebung und -werkzeuge
Bevor du mit dem Schreiben des Codes beginnst, brauchst du eine geeignete Entwicklungsumgebung. Dies stellt sicher, dass dein Entwicklungsprozess effizient ist und den besten Praktiken von WordPress entspricht.
Aufbau einer lokalen Entwicklungsumgebung
Die bevorzugte Lösung besteht darin, auf Ihrem eigenen Computer eine lokale Serverumgebung einzurichten. Sie können dazu XAMPP, MAMP (für Mac), WAMP (für Windows) oder das flexiblere Docker verwenden. Diese Toolkits enthalten den Apache-Server, die MySQL-Datenbank sowie PHP und simulieren somit perfekt die Bedingungen für den Betrieb von WordPress im Online-Modus. Nach der Installation des lokalen Servers laden Sie die neueste Version von WordPress von der offiziellen Website von WordPress.org herunter und konfigurieren Sie sie lokal gemäß dem standardmäßigen “5-Minuten-Installationsverfahren”.
Empfohlene Lektüre Einführung in die Entwicklung von WordPress-Plugins: Erstellen Sie Ihr erstes funktionales Plugin von Grund auf。
Code-Editor und essentielle Werkzeuge
Ein leistungsstarker Code-Editor ist unerlässlich. Visual Studio Code, PhpStorm oder Sublime Text sind alle hervorragende Optionen – sie bieten Funktionen wie Syntax-Hervorhebung, intelligente Code-Vorschläge sowie Debugging-Möglichkeiten. Darüber hinaus benötigst du auch ein Versionskontrollsystem wie Git, um deine Code-Änderungen zu verwalten. Auch wenn das erste Plugin möglicherweise einfach zu nutzen ist, ist es für die zukünftige Entwicklung von großer Bedeutung, die Gewohnheit zu entwickeln, ein Versionskontrollsystem zu verwenden.
Erstellen Sie Ihre erste Plugin-Datei.
Jeder WordPress-Plugin beginnt mit einer Hauptdatei, die die notwendigen Header-Anmerkungen enthält, die es WordPress ermöglichen, das Plugin zu erkennen.
Die Hauptdateistruktur eines Plugins
In Ihrem lokalen WordPress-Installationsverzeichnis gehen Sie bitte weiter…wp-content/pluginsOrdner: Hier erstellen Sie einen neuen Ordner und geben Sie ihm den Namen…my-first-plugin(Das Name sollte kurz und die Funktion des Plugins beschreibend sein.) In diesem Ordner erstellen Sie eine PHP-Datei, die in der Regel den gleichen Namen wie der Ordner trägt:my-first-plugin.phpDieses Datei wird der Einstiegspunkt für das Plugin sein.
Erstellen Sie die Kopfinformationen für das Plugin.
Am Anfang dieser Hauptdatei müssen Sie einen Kommentar zum Plugin-Header hinzufügen, der den WordPress-Standards entspricht. Dieser Kommentar enthält grundlegende Informationen über das Plugin. Hier ist ein einfaches Beispiel:
<?php
/**
* Plugin Name: 我的第一个插件
* Plugin URI: https://example.com/my-first-plugin
* Description: 这是一个用于学习的简单WordPress插件。
* Version: 1.0.0
* Author: 你的名字
* Author URI: https://example.com
* License: GPL v2 or later
* Text Domain: my-first-plugin
*/ Dieser Code ist sozusagen die “Identifikationskarte” des Plugins.Plugin NameDies ist eine Pflichtangabe – sie bestimmt den Namen des Plugins, der in der WordPress-Backend-Verwaltungsoberfläche angezeigt wird. Es wird auch empfohlen, weitere Informationen wie die Beschreibung und die Versionszahl vollständig einzugeben. Nachdem Sie die Datei gespeichert haben, gehen Sie zur “Plugins”-Seite im WordPress-Backend. Dort sollte “Mein erstes Plugin” in der Liste der Plugins erscheinen und Sie können es aktivieren. Derzeit verfügt das Plugin noch über keine Funktionen.
Empfohlene Lektüre Komplettanleitung zum Entwickeln von WordPress-Plugins: Erstellen Sie Ihr erstes funktionales Plugin von Grund auf。
Basische Funktionen für das Plugin hinzufügen
Nach der Aktivierung des Plugins fügen wir zwei der grundlegendsten Funktionen hinzu: Das Hinzufügen von benutzerdefiniertem Text nach dem Artikelinhalt sowie die Erstellung einer einfachen Verwaltungsseite.
Mit Hilfe von „Hooken“ kann der Inhalt eines Artikels geändert werden.
Das Kernprinzip von WordPress sind die sogenannten “Hooks” (Haken), die es ermöglichen, eigenen Code zu bestimmten Zeitpunkten einzufügen. Action-Hooks werden verwendet, um bestimmte Aktionen auszuführen, während Filter-Hooks dazu dienen, Daten zu verändern. Um am Ende des Artikelinhalts einen zusätzlichen Textzeilenzug hinzuzufügen, müssen wir diese Hooks nutzen.the_contentDieser Filter-Hook.
Unter den Kommentaren am Anfang Ihrer Haupt-Plugin-Datei fügen Sie die folgende Funktion sowie den entsprechenden Hook hinzu:
// 在文章内容末尾添加自定义文本
function myfp_add_footer_text( $content ) {
// 仅在主循环的单篇文章页面添加
if ( is_single() && in_the_loop() && is_main_query() ) {
$custom_text = '<p><em>Vielen Dank fürs Lesen! Dieser Artikel wurde von “Mein erster Plugin” erstellt.</em></p>';
$content .= $custom_text;
}
return $content;
}
// 将函数挂载到‘the_content’过滤器上
add_filter( 'the_content', 'myfp_add_footer_text' ); Nachdem Sie die Datei gespeichert haben, aktualisieren Sie die Seite eines Artikels auf der Website-Frontend-Seite. Dann werden Sie den hinzugefügten Text am Ende des Artikelinhalts sehen. In diesem Code…myfp_add_footer_textDie Funktion nimmt die ursprünglichen Daten entgegen.$contentNachdem die Bedingungen der Seite überprüft wurden, wurde ein benutzerdefinierter HTML-Absatztext hinzugefügt, und schließlich wurde der modifizierte Inhalt zurückgegeben.add_filter()Die Funktion verbindet unsere benutzerdefinierte Funktion mit den Kernfiltern von WordPress.
Erstellen Sie ein einfaches Verwaltungsmenü.
Als Nächstes erstellen wir eine Einstellungsseite für das Plugin im WordPress-Backend. Dazu müssen wir einen Aktionshaken (Action Hook) verwenden, um einen neuen Eintrag zum Verwaltungsmenü hinzuzufügen. Fügen Sie den folgenden Code hinzu:
// 在后台管理菜单中添加一个新页面
function myfp_add_admin_menu() {
add_menu_page(
'我的第一个插件设置', // 页面标题
'我的插件', // 菜单标题
'manage_options', // 所需权限
'my-first-plugin', // 菜单slug
'myfp_admin_page_html', // 用于输出页面内容的回调函数
'dashicons-admin-generic', // 图标(可选)
100 // 菜单位置
);
}
add_action( 'admin_menu', 'myfp_add_admin_menu' );
// 定义管理页面的HTML内容
function myfp_admin_page_html() {
// 检查用户权限
if ( ! current_user_can( 'manage_options' ) ) {
return;
}
?>
<div class="wrap">
<h1>\n</h1>
<p>Willkommen auf der Einstellungsseite für “Mein erstes Plugin”. Das ist der Beginn!</p>
</div>
<?php
} Speichern Sie die Änderungen und aktualisieren Sie das WordPress-Backend. In der Nähe des unteren Bereichs der linken Menüleiste sollten Sie nun einen neuen Menüeintrag namens “Meine Plugins” sehen. Klicken Sie darauf, um zu einer einfachen Einstellungsseite zu gelangen. Hier können Sie Ihre Plugins verwalten und weitere Einstellungen vornehmen.add_menu_page()Die Funktion ist dafür verantwortlich, die Hauptmenüseite zu registrieren.myfp_admin_page_html()Die Funktion ist dafür verantwortlich, den HTML-Inhalt der Seite zu rendern.
Plugin-Sicherheit und Code-Optimierung
Bei der Entwicklung von Plugins sind Sicherheit und Wartbarkeit von Anfang an wichtige Aspekte, die berücksichtigt werden müssen.
Empfohlene Lektüre Vom Nullpunkt aus: Warum sich für die Entwicklung von WordPress-Plugins entscheiden?。
Datensüberprüfung und -entschlüsselung
Vertrauen Sie niemals auf die Eingaben der Benutzer oder auf externe Daten. Vor dem Ausgeben von Daten an den Browser oder dem Speichern in einer Datenbank müssen diese stets verarbeitet werden. WordPress bietet zahlreiche Hilfsfunktionen dafür. Zum Beispiel können Sie bei der Ausgabe von Variablen in HTML-Attribute spezielle Funktionen verwenden, um sicherzustellen, dass die Daten korrekt und sicher dargestellt werden.esc_attr()Bei der Ausgabe in HTML-Text wird < verwendet.esc_html()Bei der Ausgabe an eine URL wird Folgendes verwendet: esc_url()In den vorherigen…myfp_admin_page_html()In der Funktion haben wir…esc_html()Sicherstellen Sie die sichere Ausgabe des Seitenbetitels.
Code mit Klassen organisieren
Mit der zunehmenden Anzahl von Plugin-Funktionen kann es zu Konflikten und Verwirrung führen, wenn alle Funktionen im globalen Namensraum abgelegt werden. Es ist eine gute Praxis, die Funktionen der Plugins mit PHP-Klassen zu verpacken. Dies verbessert die Organisation, Lesbarkeit und Wiederverwendbarkeit des Codes. Im Folgenden finden Sie einen grundlegenden Rahmen, wie unsere vorherigen Funktionen mit Klassen umgeschrieben werden können:
class My_First_Plugin {
// 构造方法,用于初始化钩子
public function __construct() {
add_filter( 'the_content', array( $this, 'add_footer_text' ) );
add_action( 'admin_menu', array( $this, 'add_admin_menu' ) );
}
public function add_footer_text( $content ) {
// ... 函数实现同上 ...
}
public function add_admin_menu() {
// ... 函数实现同上 ...
}
public function admin_page_html() {
// ... 函数实现同上 ...
}
}
// 实例化插件类
new My_First_Plugin(); Auf diese Weise werden alle relevanten Methoden und Attribute in einem Objekt gebunden, was eine klarere Struktur ermöglicht.
Zusammenfassungen
Mit dieser Anleitung hast du die grundlegenden Schritte zur Erstellung eines WordPress-Plugins von Grund auf abgeschlossen: Die Einrichtung der Umgebung, die Erstellung der Plugin-Datei mit standardmäßigen Header-Informationen, die Nutzung von Aktionen- und Filter-Hooks zur Funktionalisierung des Artikelinhalts sowie die Erstellung einer Verwaltungsoberfläche. Zudem hast du einen ersten Einblick in die Bedeutung von Sicherheit und Codeorganisation erhalten. Dies ist jedoch nur der Anfang – die Welt der WordPress-Plugin-Entwicklung ist sehr vielfältig. Du kannst weitere fortgeschrittene Funktionen wie Shortcodes, Widgets, benutzerdefinierte Artikeltypen (Custom Post Types) und REST API-Endpunkte erkunden. Denke daran: Das Lesen des Quellcodes, das Nachschlagen nach Implementierungsbeispielen erfolgreicher Plugins sowie das Studium der offiziellen Entwicklerdokumentation sind die besten Wege, um kontinuierlich deine Fähigkeiten zu verbessern.
FAQ Häufig gestellte Fragen
Welche Techniken muss man beherrschen, um Plugins zu entwickeln?
Um WordPress-Plugins zu entwickeln, sind Grundkenntnisse in PHP, HTML, CSS und JavaScript erforderlich. PHP ist dabei das Kernprotokoll, da WordPress selbst in PHP programmiert ist – mit dieser Sprache wird die Logik der Plugins geschrieben. HTML/CSS dienen dazu, die Benutzeroberfläche zu erstellen, während JavaScript (insbesondere jQuery sowie moderne Versionen von ES6+) die Interaktivität verbessern und AJAX-Anfragen ermöglichen. Ebenfalls hilfreich ist ein grundlegendes Verständnis von MySQL, um Daten effektiv zu verarbeiten.
Warum wird mein Plugin im Hintergrund nicht angezeigt?
Überprüfen Sie zunächst die folgenden Punkte: 1. Ist die Hauptdatei des Plugins an der richtigen Stelle abgelegt?wp-content/pluginsIm separaten Ordner im Verzeichnis. 2. Die Kommentare am Anfang der Plugins im Hauptfile (insbesondere…)Plugin Name:1. Ist das Format korrekt?
2. Ist die Datei richtig codiert?
3. Ist die Datei im UTF-8-Format ohne BOM?
4. Gibt es Syntaxfehler, die zum Fehlschlagen der PHP-Analyse führen? Sie können dazu das Debugging-Protokoll von WordPress überprüfen (dazu müssen Sie es aktivieren).wp-config.phpAktivieren in ChinaWP_DEBUG)。
Wie kann man einen Plugin testen, ohne die Funktionen der Online-Website zu beeinträchtigen?
Es wird dringend empfohlen, Plugins in einer lokalen Entwicklungsumgebung (z. B. Local by Flywheel, XAMPP) oder auf einem separaten Testserver (Staging Site) zu entwickeln und zu testen. Unter keinen Umständen sollten ungetestete neue Plugins direkt auf einem produktiven Website, auf dem wichtige Daten gespeichert sind, getestet werden. Verwenden Sie Werkzeuge zur Versionsverwaltung (z. B. Git), um den Code zu organisieren, damit Sie bei Problemen problemlos auf frühere Versionen zurückkehren können.
Wie sollten Plugins aktualisiert werden?
Sie sollten die Anmerkung im Kopfbereich der Hauptdatei des Plugins aktualisieren.Version:Felder: Bei größeren Updates wird empfohlen, das semantische Versionskontrollsystem (SemVer) zu verwenden. Zum Beispiel sollte ein Bugfix durch eine Erhöhung der Revisionszahl (z. B. 1.0.1) gekennzeichnet werden, neue,backward-kompatible Funktionen durch eine Erhöhung der Nebenversionszahl (z. B. 1.1.0) und inkompatible Updates durch eine Erhöhung der Hauptversionszahl (z. B. 2.0.0). Außerdem können Sie einen Update-Detektionsmechanismus implementieren (z. B. indem Sie die Plugin-Informationen auf Ihrem eigenen Server oder im WordPress-Plugin-Verzeichnis speichern), um Benutzern Benachrichtigungen über Updates im Hintergrund zuzusenden.
Welche Voraussetzungen sind erforderlich, um einen Plugin in das offizielle Verzeichnis zu veröffentlichen?
Wenn Sie das Plugin in das offizielle Plugin-Verzeichnis von WordPress.org einreichen möchten, müssen Sie die folgenden Hauptbedingungen erfüllen: Der Plugin-Code muss mit der GPLv2-Lizenz oder einer höheren Version kompatibel sein; die Codequalität muss ausreichend sein und den WordPress-Codierungsstandards entsprechen; die Funktionen müssen allgemein anwendbar und praktisch sein und dürfen nicht nur für eine bestimmte Website angepasst sein; es dürfen keine bösartigen Codes oder Spam-Links enthalten sein. Vor dem Einreichen sollten Sie die detaillierten Einreichungsrichtlinien und Anforderungen im „Entwicklercenter“ des offiziellen Verzeichnisses sorgfältig lesen.
Was kommt als Nächstes, was kommt als Nächstes?
Erweiterte Lektüre und praktische Kenntnisse
Die folgenden Artikel stehen im Zusammenhang mit dem Thema dieses Artikels und eignen sich für eine vertiefte Lektüre. Oft ist es besser, mit dem Artikel zu beginnen, der Ihrem aktuellen Problem am nächsten kommt, und dann nach und nach die umliegenden Themen zu behandeln.
- Das ultimative WordPress-Building-Handbuch: Von Null bis Meisterhaftigkeit – Erstellen Sie professionelle Webseiten
- Warum wird WordPress als bevorzugte Plattform für Websites gewählt?
- WordPress-Einsteigerhandbuch: Erstelle deine erste professionelle Website von Grund auf
- Was ist WordPress? Eine umfassende Einführung in ein Content-Management-System
- Vorwort: Warum die Entwicklung mit WordPress?