Heim > CMS-Tutorial > WordDrücken Sie > WordPress Plugin -Entwicklung

WordPress Plugin -Entwicklung

Jennifer Aniston
Freigeben: 2025-02-21 10:48:10
Original
552 Leute haben es durchsucht

WordPress Plugin -Entwicklung

Wenn Sie jemals WordPress verwendet haben, um eine Website schnell zu erstellen, haben Sie wahrscheinlich eines der vielen Plugins verwendet, die angeboten werden, um die Funktionalität dieser beliebten Blogging -Software zu erweitern. Plugins sind eines der vielen Dinge, die WordPress so attraktiv machen. Wenn Sie eine Bildergalerie oder ein Kontaktformular benötigen, gibt es wahrscheinlich bereits ein Plugin, das Sie herunterladen und verwenden können. Es gibt jedoch Zeiten, in denen Sie nicht ganz finden können, was Sie von vorhandenen Plugins benötigen. In diesem Artikel wird angezeigt, wie Sie Ihre eigenen WordPress -Plugins erstellen, indem Sie Sie durch ein Beispiel gehen, um einen Text mit einem Widget in der Seitenleiste anzuzeigen.

Key Takeaways

  • WordPress -Plugins, die die Funktionalität der Blogging -Software erweitern, können von Benutzern erstellt werden, wenn sie kein vorhandenes Plugin finden, das ihren Anforderungen entspricht. Der Erstellungsprozess beinhaltet das Erstellen eines neuen Unterverzeichnisses im Verzeichnis WP-Content/Plugins und der Bereitstellung eines Deskriptors in den PHP-Dateikommentaren, um das Plugin zu identifizieren.
  • WordPress bietet eine WP_WIDGE -Klasse, die erweitert werden kann, um benutzerdefinierte Widgets zu erstellen. Die WP_WIDGE -Klasse hat vier Methoden, die überschrieben werden sollten: __construct (), form (), update () und widget (). Diese Methoden initialisieren das Widget, zeigen ein Formular für die Anpassung an, aktualisieren Sie die Widget -Eigenschaften und zeigen Sie das Widget im Blog an.
  • Beim Erstellen eines WordPress -Plugins ist es wichtig, Best Practices wie die Verwendung ordnungsgemäßer Namenskonventionen zu befolgen, die Sicherheit zu gewährleisten, indem die Benutzereingabe validiert und saniert werden und das Plugin übersetzbar werden, um eine breitere Zielgruppe zu erreichen. Die Kompatibilität mit allen Themen kann erreicht werden, indem die Codierungsstandards von WordPress und das Plugin mit unterschiedlichen Themen getestet werden.
  • Debugging eines WordPress-Plugins umfasst die Verwendung des integrierten Debugging-Systems oder eines PHP-IDE mit einem Debugger. Bei der Sicherstellung des Plugins -Sicherheits wird die Überprüfung und Bereinigung von Benutzereingaben, die Verwendung von Nonces zur Überprüfung der Anforderungsquellen, zur Festlegung der richtigen Dateiberechtigungen und zur Verwendung von WordPress -API -Funktionen zur Datenmanipulation umfasst. Regelmäßige Updates und Tests können dazu beitragen, potenzielle Sicherheitslücken zu identifizieren.

Die Haupt -Plugin -Datei

Plugins werden automatisch aus dem Verzeichnis WP-Content/Plugins in Ihrem WordPress-Installationsverzeichnis erkannt. Beim Erstellen eines neuen Plugins sollten Sie dort ein neues Unterverzeichnis erstellen. Der Name des Unterverzeichnisses kann alles sein, was Sie wollen. Eine vernünftige Option wäre, es den Namen Ihres Plugins zu nennen. Versuchen Sie, generische Namen wie „Textwidget“ oder „ShoppingCart“ zu vermeiden, da dies möglicherweise bereits mit einem anderen Plugin verwendet wurde und Probleme verursacht, falls Sie es an andere Benutzer von WordPress verteilen möchten. Erstellen Sie bei diesem Beispiel ein Unterverzeichnis mit dem Namen PHPMASTER_EMAPLEWIDGET. WordPress erkennt, dass ein Plugin aus einem Deskriptor verfügbar ist, der in den Kommentaren einer PHP -Datei platziert ist. Der Deskriptor muss die grundlegenden Informationen darüber geben, was das Plugin erstellt hat, wer es erstellt hat, und seine Lizenzinformationen. Dies ist, was WordPress verwendet, um zu identifizieren, dass ein Plugin vorhanden und bereit ist, aktiviert zu werden. Dieses Beispiel -Plugin enthält die Definition oben in einer Datei, die in Ihrem neu erstellten PHPMaster_ExampleWidget -Verzeichnis platziert ist. Der Name der Datei ist ebenfalls willkürlich, aber es ist ratsam, einen Bedeutungsnamen anzugeben. In diesem Beispiel wird die Datei widget_init.php aufgerufen.
<span><span><?php
</span></span><span><span>/* 
</span></span><span><span>Plugin Name: Simple Text Plugin
</span></span><span><span>Plugin URI: http://www.example.com/textwidget
</span></span><span><span>Description: An example plugin to demonstrate the basics of putting together a plugin in WordPress
</span></span><span><span>Version: 0.1 
</span></span><span><span>Author: Tim Smith 
</span></span><span><span>Author URI: http://www.example.com
</span></span><span><span>License: GPL2 
</span></span><span><span>
</span></span><span><span>    Copyright 2011  Tim Smith
</span></span><span><span>
</span></span><span><span>    This program is free software; you can redistribute it and/or
</span></span><span><span>    modify it under the terms of the GNU General Public License,
</span></span><span><span>    version 2, as published by the Free Software Foundation. 
</span></span><span><span>
</span></span><span><span>    This program is distributed in the hope that it will be useful,
</span></span><span><span>    but WITHOUT ANY WARRANTY; without even the implied warranty of 
</span></span><span><span>    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
</span></span><span><span>    GNU General Public License for more details. 
</span></span><span><span>
</span></span><span><span>    You should have received a copy of the GNU General Public License 
</span></span><span><span>    along with this program; if not, write to the Free Software 
</span></span><span><span>    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 
</span></span><span><span>    02110-1301  USA 
</span></span><span><span>*/</span></span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Dies ist die erforderliche Struktur für jedes Plugin, das Sie für WordPress erstellen. Wenn Sie sich nun anmelden und sich im WordPress -Bildschirm für Plugin -Administration ansehen, sehen Sie, dass das neue Plugin zur Aktivierung bereit ist.

WordPress Plugin -Entwicklung

Sie können alle Informationen sehen, die Sie in den Kommentarbereich eingegeben haben, in dem beschrieben wird, dass das Plugin hier angezeigt wird. Sie können es jetzt aktivieren, wenn Sie möchten, aber Sie müssen noch einige Funktionen hinzufügen, bevor es etwas tut. Die Datei mit dieser Definition wird nun als Ausgangspunkt für jeden dem Plugin verknüpften Code angesehen. Der Code, der nach der Ausführung der Definitionskommentare erscheint, wird Ihnen die Möglichkeit gegeben, das Plugin und seine Funktionen zu initialisieren.

WordPress -Widgets

WordPress bietet eine Klasse, die Sie mit dem Namen WP_WIDget erweitern können. Wenn Sie es erweitern, steht Ihr eigenes Widget jeder Seitenleiste zur Verfügung, die Ihr Thema bietet. WordPress wird mit einer Reihe von Standard -Widgets wie "Neuesten Beiträge" und "Archiv" geliefert, die wp_widget erweitern. Die WP_WIDget -Klasse enthält vier Methoden, die überschrieben werden sollten:
  • __ construct () - Rufen Sie den übergeordneten Konstruktor auf und initialisieren Sie alle Klassenvariablen
  • Form () - Zeigen Sie ein Formular für das Widget in der Administratoransicht an, um die Eigenschaften des Widgets
  • anzupassen
  • update () - Aktualisieren Sie die im Formular angegebenen Eigenschaften des Widgets in der Administratoransicht
  • Widget () - Zeigen Sie das Widget im Blog
  • an

Der Konstruktor

Der Konstruktor ist wie jeder andere Konstruktor, den Sie wahrscheinlich geschrieben haben. Das Wichtigste, an das Sie sich erinnern sollten, ist, den übergeordneten Konstruktor aufzurufen, der drei Argumente aufnehmen kann: eine Kennung für das Widget, den freundlichen Namen des Widgets (dies wird als Titel des Widgets im Bildschirm Admin -Widget angezeigt) und ein Array) und ein Array Detaillierung der Eigenschaften des Widgets (für die nur ein „Beschreibung“ -Werte erforderlich ist).
<span><span><?php
</span></span><span><span>/* 
</span></span><span><span>Plugin Name: Simple Text Plugin
</span></span><span><span>Plugin URI: http://www.example.com/textwidget
</span></span><span><span>Description: An example plugin to demonstrate the basics of putting together a plugin in WordPress
</span></span><span><span>Version: 0.1 
</span></span><span><span>Author: Tim Smith 
</span></span><span><span>Author URI: http://www.example.com
</span></span><span><span>License: GPL2 
</span></span><span><span>
</span></span><span><span>    Copyright 2011  Tim Smith
</span></span><span><span>
</span></span><span><span>    This program is free software; you can redistribute it and/or
</span></span><span><span>    modify it under the terms of the GNU General Public License,
</span></span><span><span>    version 2, as published by the Free Software Foundation. 
</span></span><span><span>
</span></span><span><span>    This program is distributed in the hope that it will be useful,
</span></span><span><span>    but WITHOUT ANY WARRANTY; without even the implied warranty of 
</span></span><span><span>    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
</span></span><span><span>    GNU General Public License for more details. 
</span></span><span><span>
</span></span><span><span>    You should have received a copy of the GNU General Public License 
</span></span><span><span>    along with this program; if not, write to the Free Software 
</span></span><span><span>    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 
</span></span><span><span>    02110-1301  USA 
</span></span><span><span>*/</span></span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Mit der grundlegenden Widget -Struktur möchten Sie das Widget registrieren und sicherstellen, dass dies zu einer Zeit erfolgt, in der alle anderen Widgets initialisiert werden. Das Registrieren eines Widgets erfolgt über die Funktion "Register_Widget (), die ein einzelnes Argument nimmt, den Namen der Klasse, die WP_WIDGE erweitert. Dieser Aufruf zur Registrierung des Widgets muss zu einem angemessenen Zeitpunkt aufgerufen werden. Der bestimmte WordPress -Hook, den Sie verwenden möchten, heißt "Widgets_init". Um das Registrieren des Widgets mit dem Hook zu verbinden, verwenden Sie add_action (), das den Namen des Hakens als erstes Argument und eine Funktion zum zweiten ausführen. (Das zweite Argument kann entweder der Zeichenfolgenname einer Funktion oder eines Verschlusss sein.) Dieser Code sollte direkt unter den Deskriptor des Plugins gehen, das in widget_init.php erstellt wurde.
<span><span><?php
</span></span><span><span>class TextWidget extends WP_Widget
</span></span><span><span>{
</span></span><span>    <span>public function __construct() {
</span></span><span>        <span><span>parent::</span>__construct("text_widget", "Simple Text Widget",
</span></span><span>            <span>array("description" => "A simple widget to show how WP Plugins work"));
</span></span><span>    <span>}
</span></span><span><span>}</span></span>
Nach dem Login kopieren
Nach dem Login kopieren
Nachdem es registriert und initialisiert wurde, können Sie Ihr Widget zur Verfügung stellen.

Die Form () Methode

Mit dem Beispiel -Widget hier sollten Sie einen Titel und einen Text eingeben, der bei der Anzeige im Blog angezeigt wird. Um diese beiden Aspekte des Widgets zu ändern, müssen Sie ein Formular erstellen, um diese Werte fordern. Die Form () -Methode () wird im Bildschirm "Widget Administration" verwendet, um Felder anzuzeigen, mit denen Sie später die Funktionalität des Widgets auf der Website selbst ändern können. Die Methode nimmt ein Argument an, ein $ -Stanz -Array von Variablen, die dem Widget zugeordnet sind. Wenn das Formular eingereicht wird, ruft das Widget die update () -Methode auf, mit der Sie die Felder in $ Instance mit neuen Werten aktualisieren können. Später wird Widget () aufgerufen und nutzt $ Instance, um die Werte anzuzeigen.
<span><span><?php
</span></span><span><span>add_action("widgets_init",
</span></span><span>    <span>function () { register_widget("TextWidget"); });
</span></span><span><span>?></span></span>
Nach dem Login kopieren
Sie verwenden die Methode wp_widget 'get_field_id () und Get_field_Name (), um IDs und Namen für die Formularfelder zu erstellen. WordPress generiert eindeutige Bezeichner für Sie, um nicht mit anderen verwendeten Widgets zusammenzukommen. Wenn das Formular eingereicht wird, aktualisieren die Werte die entsprechenden $ -Schall -Array -Elemente. Sie können das bestandene Argument für $ Instance verwenden, um die Formularfelder mit Werten zu füllen, falls sie bereits festgelegt sind. So sieht das Formular in der Administratoransicht aus:

WordPress Plugin -Entwicklung

Das übergeordnete Element
selbst, die Schaltfläche Speichern und die Links und Schließen von Löschen und Schließen werden für Sie automatisch von WordPress generiert, sodass sie nicht explizit codieren müssen. Das Formular veröffentlicht die Variablen und ruft die update () -Methode auf, damit die neuen Werte in $ Instance eingefügt werden können.

Die update () -Methode

aktualisieren() gibt Ihnen die Möglichkeit, die Instanzvariablen zu validieren und zu sanieren, bevor sie vom Widget verwendet werden. Hier können Sie Entscheidungen auf der Grundlage der alten Werte treffen und die neuen Werte entsprechend aktualisieren. update () muss ein Array zurückgeben, das die Elemente enthält, die Sie bei der Anzeige des Widgets erwarten. WordPress übergibt zwei Argumente daran, ein Array mit den neuen Instanzwerten aus dem Formular und ein Array mit den ursprünglichen Instanzwerten.
<span><span><?php
</span></span><span><span>/* 
</span></span><span><span>Plugin Name: Simple Text Plugin
</span></span><span><span>Plugin URI: http://www.example.com/textwidget
</span></span><span><span>Description: An example plugin to demonstrate the basics of putting together a plugin in WordPress
</span></span><span><span>Version: 0.1 
</span></span><span><span>Author: Tim Smith 
</span></span><span><span>Author URI: http://www.example.com
</span></span><span><span>License: GPL2 
</span></span><span><span>
</span></span><span><span>    Copyright 2011  Tim Smith
</span></span><span><span>
</span></span><span><span>    This program is free software; you can redistribute it and/or
</span></span><span><span>    modify it under the terms of the GNU General Public License,
</span></span><span><span>    version 2, as published by the Free Software Foundation. 
</span></span><span><span>
</span></span><span><span>    This program is distributed in the hope that it will be useful,
</span></span><span><span>    but WITHOUT ANY WARRANTY; without even the implied warranty of 
</span></span><span><span>    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
</span></span><span><span>    GNU General Public License for more details. 
</span></span><span><span>
</span></span><span><span>    You should have received a copy of the GNU General Public License 
</span></span><span><span>    along with this program; if not, write to the Free Software 
</span></span><span><span>    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 
</span></span><span><span>    02110-1301  USA 
</span></span><span><span>*/</span></span>
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
WordPress bleibt diese Werte für Sie bestehen, sodass Sie diese Funktionalität nicht implementieren müssen.

Die Widget () -Methode

Mit der Widget () -Methode werden Inhalte innerhalb des Widgets angezeigt, wenn sie in der Seitenleiste in Ihrem Blog angezeigt wird. Ausgabe aus der Methode rendert die Blog -Seite. WordPress übergibt die Widget () -Methode zwei Argumente: Das erste ist $ args, ein Array -Detailinformationen zum Widget, und die zweite ist die $ -Sinstanz, mit der Sie die mit dem Widget verknüpften Daten erhalten können. $ args werden dieses Beispiel wirklich nicht beeinflussen, daher werde ich nicht darauf eingehen. Denken Sie daran, $ Instance ist das zweite Argument.
<span><span><?php
</span></span><span><span>class TextWidget extends WP_Widget
</span></span><span><span>{
</span></span><span>    <span>public function __construct() {
</span></span><span>        <span><span>parent::</span>__construct("text_widget", "Simple Text Widget",
</span></span><span>            <span>array("description" => "A simple widget to show how WP Plugins work"));
</span></span><span>    <span>}
</span></span><span><span>}</span></span>
Nach dem Login kopieren
Nach dem Login kopieren
Dies erzeugt die folgende mögliche Ausgabe auf der Website:

WordPress Plugin -Entwicklung

Und das ist es! Wenn Sie all dies zusammenfügen, gibt es Ihnen ein sehr einfaches Widget, um Text auf der Blog -Seite einer WordPress -Installation anzuzeigen.

Zusammenfassung

Sie kennen jetzt mit den notwendigen Grundlagen für ein WordPress -Plugin, das sicherstellt, dass WordPress es erkennen und aktivieren und die WP_WIDGE -Klasse erweitern kann, um Ihre eigenen Widgets zu erstellen. Das in diesem Artikel vorgestellte Beispiel-Widget hat gezeigt, dass die Fähigkeit die Anzeige des Widgets über ein Administratorkonfigurationsformular anpassen kann. Obwohl es einfach ist, haben es die grundlegenden WP_WIDGE -Methoden hervorgehoben, die Sie verwenden, und Sie können problemlos von diesem Beispiel weiterentwickeln und eine größere Funktionalität für Ihre eigenen WordPress -Websites erstellen. Der Code für dieses Beispiel ist unter dem GitHub -Konto von PhpMaster verfügbar, sodass Sie sich den Code in ihrer Gesamtheit ansehen können. Bild über Bioraven / Shutterstock

häufig gestellte Fragen zur WordPress -Plugin -Entwicklung

Wie fange ich an, ein WordPress -Plugin zu entwickeln? Sobald Sie diese Fähigkeiten haben, können Sie zunächst einen neuen Ordner in Ihrem WordPress -Plugins -Verzeichnis erstellen. Nennen Sie diesen Ordner nach Ihrem Plugin. Erstellen Sie in diesem Ordner eine PHP -Datei mit demselben Namen. Diese Datei dient als Hauptdatei für Ihr Plugin. In dieser Datei müssen Sie einen Header -Kommentar angeben, der WordPress mitteilt, dass hier ein Plugin existiert. Nach dem Einrichten der Grundstruktur können Sie mit dem Schreiben der Funktionalität Ihres Plugins beginnen. Verwenden ordnungsgemäßer Namenskonventionen, um Funktionsnamenkonflikte mit anderen Plugins zu vermeiden, wordelten Sie nach Möglichkeit mit WordPress -Hooks und Filtern, um sicherzustellen Erreichen Sie ein breiteres Publikum. Es ist auch wichtig, Ihren Code für zukünftige Referenz und Updates sauber und gut zu kennzeichnen zu halten.

Wie kann ich mein WordPress-Plugin mit allen Themen kompatibel machen? Themen können aufgrund der großen Anzahl der verfügbaren Themen eine Herausforderung sein. Wenn Sie jedoch die WordPress -Codierungsstandards einhalten, Hooks und Filter verwenden, anstatt Kerndateien zu ändern und Ihr Plugin mit unterschiedlichen Themen zu testen, kann dies dazu beitragen, die Kompatibilität zu gewährleisten. Es wird auch empfohlen, Ihre Plugin -Benutzer eindeutige Dokumentation und Unterstützung bereitzustellen.

Wie debugge ich mein WordPress -Plugin? WordPress verfügt über ein integriertes Debugging-System, das Sie in Ihrer Datei wp-config.php aktivieren können. Durch das Einstellen von WP_Debug auf true können Sie PHP -Fehler am vorderen Ende Ihrer Website anzeigen. Darüber hinaus kann die Verwendung einer PHP -IDE mit einem Debugger Ihnen dabei helfen, Ihren Code durchzuführen und Probleme effizienter zu finden. WordPress -Plugin umfasst mehrere Schritte. Validieren und sanieren Sie die Benutzereingaben immer, um die SQL -Injektionsangriffe zu verhindern. Zweitens überprüfen Sie Nonces, um die Quelle von Anforderungen zu überprüfen. Drittens verwenden Sie die richtigen Dateiberechtigungen in Ihren Plugin -Dateien. Viertens verwenden Sie die WordPress -API -Funktionen für die Datenmanipulation anstelle von benutzerdefinierten SQL -Abfragen. Aktualisieren und testen Sie Ihr Plugin regelmäßig auf potenzielle Sicherheitslücken. T beeinflussen negativ die Ladegeschwindigkeit der Website, da dies ein Schlüsselfaktor in der SEO ist. Wenn Ihr Plugin der Website Inhalte hinzufügt, stellen Sie sicher, dass es von Suchmaschinen leicht krabbelbar und indexierbar ist. Wenn Ihr Plugin Bilder umfasst, addieren Sie ALT -Tags. Stellen Sie schließlich sicher, dass Ihr Plugin mit beliebten SEO -Plugins kompatibel ist.

Wie aktualisiere ich mein WordPress -Plugin? Nummer im Header -Kommentar Ihres Plugins. Sobald Sie die aktualisierte Version getestet und sichergestellt haben, können Sie sie in das WordPress -Plugin -Repository hochladen. Wenn Ihr Plugin im WordPress-Plugin-Repository gehostet wird, werden Benutzer über das Update in ihrem WordPress-Dashboard informiert. Beim benutzerfreundlichen Bildern werden klare und detaillierte Dokumentation bereitgestellt, einschließlich Screenshots oder Videos, falls dies erforderlich ist. Stellen Sie außerdem sicher, dass die Einstellungen und Optionen Ihres Plugins intuitiv und leicht zu verstehen sind. Durch die Bereitstellung von sofortigen und hilfreichen Unterstützung kann auch die Benutzererfahrung erheblich verbessert werden.

Wie teste ich mein WordPress -Plugin? Sie können automatisierte Testwerkzeuge wie Phpunit für Unit -Tests verwenden. Erwägen Sie außerdem, Debugging -Tools zu verwenden, um Fehler oder Probleme zu identifizieren. Es ist auch eine gute Idee, Beta -Tester zu haben, die Feedback geben können, bevor Sie Ihr Plugin loslassen.

Wie kann ich mein WordPress -Plugin monetarisieren?

Es gibt verschiedene Möglichkeiten, Ihr WordPress -Plugin zu monetarisieren. Sie können eine kostenlose Version mit grundlegenden Funktionen und einer Premium -Version mit erweiterten Funktionen anbieten. Sie können auch kostenlose Add-Ons für Ihr kostenloses Plugin anbieten. Eine andere Möglichkeit besteht darin, Ihr Plugin kostenlos anzubieten und kostenpflichtige Support- oder benutzerdefinierte Entwicklungsdienste anzubieten.

Das obige ist der detaillierte Inhalt vonWordPress Plugin -Entwicklung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage