Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. WordPress

Ihr erstes WordPress-Plugin: Einfache Optimierung

by
Length:LongLanguages:

German (Deutsch) translation by Valentina (you can also view the original English article)

WordPress ist die größte Blogging-Plattform, die heute im Internet verfügbar ist. und mit der offiziellen Veröffentlichung von Version drei gleich um die Ecke wird es nur noch größer. Daher werden wir in den nächsten eigenständigen Tuts die Vor- und Nachteile der Entwicklung von WordPress-Plugins kennenlernen, beginnend mit der Erstellung unseres ersten einfachen Plugins, "Simple Optimization".


Schritt 0 Bevor wir beginnen

In diesem Tutorial wird davon ausgegangen, dass Sie mindestens Anfänger mit PHP und der WordPress-Syntax vertraut sind. Obwohl wir alles behandeln werden, helfen Ihnen einige Kenntnisse im Voraus dabei, die Konzepte viel einfacher zu verstehen. Ich gehe auch davon aus, dass Sie ein WP-Blog-Setup haben ud bereit sind.


Schritt 1. Was unser Plugin macht

Der allererste Schritt beim Schreiben eines WP-Plugins besteht darin, alles zu bestimmen, was es tun soll. Da dies unser erstes Plugin ist, werden wir nichts zu drastisches tun. Lassen Sie uns etwas erstellen, das unseren Blog beschleunigt. Unsere Seiten werden schneller gerendert, und wir werden auch ein wenig SEO betreiben, um unseren Suchrang und unsere Auffindbarkeit zu verbessern.

"Erstellen Sie immer eine Liste der Aufgaben, die Ihr Plugin tatsächlich ausführen soll, bevor Sie Code schreiben!"

Entfernen Sie nutzlose Meta-Tags:

  • "rsd_link" - Wirklich einfacher Erkennungslink
  • "wlwmanifest_link" - Windows Live Writer-Link
  • "wp_generator" - WordPress-Versionsnummer

Entfernen Sie unnötige Filter:

  • "wptexturize" - Geschweifte Anführungszeichen
  • "wp_filter_kses" - HTML in Benutzerprofilen

SEO:

  • Fügen Sie Post-Tags als Schlüsselwörter in <head > ein
  • Fügen Sie als Beschreibung einen Post-Auszug in <head > ein

Schritt 2. Grundsteinlegung

Navigieren Sie zunächst zu Ihrem Plugins-Ordner ("/wp-content/plugins/") und erstellen Sie einen neuen Ordner. Wir nennen unsere "einfache Optimierung". Als nächstes müssen wir in diesem Ordner zwei Dateien erstellen. Die erste ist die eigentliche Plugin-Datei (mit dem Namen "main.php") und die zweite ist die obligatorische README-Datei ("readme.txt"). Wir werden readme.txt vorerst leer lassen; Öffnen Sie also main.php in Ihrem bevorzugten Texteditor und kopieren Sie den folgenden Code.

Dieser Text ist das absolute Minimum, das erforderlich ist, damit ein Plugin im WordPress-Plugin-Verzeichnis angezeigt wird. Sie müssen natürlich jedes Teil nach Belieben füllen.


Schritt 3. Hinzufügen der Funktionen

Die ersten beiden Funktionen, die wir implementieren werden, sind auch die einfachsten. Standardmäßig fügt WordPress dem Abschnitt <head > Ihres Blogs mehrere Meta-Tags hinzu. Die einfache Tatsache ist jedoch, dass diese Meta-Tags überhaupt keinen Wert haben. Also werden wir WordPress einfach daran hindern, sie hinzuzufügen. Jedes Mal, wenn WordPress eine Aktion ausführt, wird sie entweder als Filter oder als Aktion bezeichnet, und wir können diese Filter und Aktionen entweder entfernen oder bearbeiten (eine Liste aller Filter finden Sie hier und alle Aktionen hier). In diesem Fall möchten wir die verschiedenen Aktionen entfernen, die diese Meta-Tags hinzufügen.

Dazu verwenden wir eine sehr einfache Funktion namens "remove_action ('action', 'function')". Diese Funktion entfernt die im zweiten Parameter deklarierte Funktion aus der Aktion, dem ersten Parameter.

Das gleiche genau gleiche Prinzip gilt für die beiden Filter, die wir entfernen werden:


Schritt 4. SEO

Nachdem wir dieses Aufblähen beseitigt haben, stellen wir sicher, dass unser Blog über einige grundlegende SEO-Funktionen verfügt. Stellen Sie also sicher, dass wir Schlüsselwörter pro Seite haben, die dieser Seite entsprechen, und ändern Sie die Beschreibung, um sie besser an den Artikel anzupassen. Für unsere Keywords greifen wir auf die Tags der aktuellen Seite/des aktuellen Beitrags zu. Dies wird durch die Funktion "wp_get_post_tags()" sehr einfach gemacht. wp_get_post_tags gibt ein Array von Tags aus dem aktuellen Beitrag zurück. Wir können dieses Array dann einfach in eine Zeichenfolge formatieren und in unseren Header einfügen (innerhalb der Funktion "wp_head()", die jedes Thema bereits enthalten sollte), indem wir unsere Funktion an die Aktion wp_head anhängen.

Beginnen wir mit der Erstellung einer neuen Funktion, tags_to_keywords(), und innerhalb dieser Funktion schreiben wir eine einfache if-Anweisung, die überprüft, ob die aktuelle Seite ein einzelner Beitrag oder eine einzelne Seite ist (mithilfe der WP-Funktionen: is_single() und is_page()). Als Nächstes erstellen wir in dieser if-Anweisung eine Variable mit dem Namen $tags und setzen ihren Inhalt auf die Funktion wp_get_post_tags(). Damit diese Funktion funktioniert, müssen wir jedoch den Parameter "post_id" übergeben. Der einfachste Weg, dies zu erreichen, besteht darin, die WP-Variable $post zu globalisieren, die die Post-ID enthält ($post->ID, $post ist ein Objekt, weshalb wir seine Werte so nennen).

Als Nächstes filtern wir mit einem foreach durch die $tags-Daten und erstellen ein neues Array mit nur den gewünschten Informationen ($tag_array). Anschließend implodieren wir das Array in eine Zeichenfolge und trennen jedes Element durch ein Komma und ein Leerzeichen ($tag_string) vom Array. Dann erstellen wir eine weitere if-Anweisung, die überprüft, ob $tag_string einen Wert hat (dh, haben wir Tags für den Beitrag), und wenn dies der Fall ist, wird der endgültige HTML-Code wiedergegeben.

Das Letzte, was wir jetzt tun müssen, ist, unsere neue Funktion mit der Aktion wp_head zu verknüpfen. Dazu rufen wir add_action('action', 'function') auf und übergeben ihm die Parameter "wp_head" und "tags_to_keywords" (in dieser Reihenfolge).

Um unsere SEO weiter zu verbessern, werden wir unsere Beschreibungs-Metadaten ebenfalls zum Header hinzufügen, wobei wir dieselbe Methode wie die Schlüsselwörter verwenden. Sobald wir die if-Anweisung neu geschrieben haben, erstellen wir eine neue Variable $all_post_content und füllen sie mit der WP-Funktion wp_get_single_post() (und übergeben den Parameter $ post->ID). Dadurch erhalten wir ein Objekt, das alle Daten zu unserem Beitrag enthält. Mit dieser Variablen können wir eine Beschreibung mit dem tatsächlichen Inhalt des Beitrags erstellen, aber wir werden sie mit der Funktion substr ($excerpt) auf einhundert Zeichen kürzen. Und dann geben wir einfach den HTML-Code mit dem darin geschriebenen Auszug wieder. (Optional können Sie auch eine else-Anweisung hinzufügen und Ihre Blog-Beschreibung mit der Funktion get_bloginfo ('description') wiedergeben.)


Schritt 5. Optimieren der Datenbank

Die letzte Funktion für unser Plugin ist die Optimierung unserer Datenbanktabellen durch Entfernen von Overhead (nutzlose/überschüssige Daten in einer SQL-Tabelle, die durch Manipulieren der Datenbank erstellt wurde). Zunächst erstellen wir eine neue Funktion (optimize_database) und rufen darin die globale WPDB-Variable ($wpdb) auf. Auf diese Weise können wir mit der Datenbank interagieren, ohne unsere Authentifizierungsdetails erneut eingeben zu müssen. $wpdb verfügt über mehrere Methoden, mit denen Sie interagieren und Informationen aus der Datenbank abrufen können (Vollständige Liste hier). Wir werden jedoch nur eine verwenden, get_results. Wenn Sie get_results mit den Parametern "SHOW TABLES" und "ARRAY_A" verwenden, erhalten Sie ein assoziatives Array aller Tabellennamen in der Datenbank. An diesem Punkt können wir einen foreach verwenden, um jeden der Array-Werte zu durchlaufen (mithilfe von array_values, um den Tabellennamen zu erhalten, da er von der Funktion überlagert wird) und eine andere $wpdb-Methode verwenden, um den Optimierungsbefehl Abfrage auszuführen ("TABELLE OPTIMIEREN _____ ").

Während diese Funktion funktioniert, wird sie niemals ausgeführt, da WordPress keine Möglichkeit hat, sie auszuführen. Glücklicherweise hat WordPress eine Funktion namens cron, die Funktionen so plant, dass sie in bestimmten Intervallen (täglich, wöchentlich usw.) ausgeführt werden. Dies ist perfekt für uns, da wir unsere Datenbank häufig optimieren möchten. Um Cron zu verwenden, erstellen wir eine neue Funktion (simple_optimization_cron_on) und füllen sie mit einem weiteren Funktionsaufruf von wp_schedule_event(). Um zu arbeiten, benötigt wp_schedule_event drei Dinge: eine Ausführungszeit, ein Intervall zwischen den einzelnen Ausführungen und eine aufzurufende Funktion; Also übergeben wir ihm die Parameter: 'time()' (wir gehen davon aus, dass jedes Mal, wenn das Cron-Ereignis erstellt wird, ein guter Zeitpunkt ist, um die Funktion aufzurufen), 'daily', 'optimize_database' in dieser Reihenfolge.

Großartig, jetzt wird unsere Funktion optimize_database zur WP-Cron-Liste hinzugefügt, oder wir würden die Funktion simple_optimization_cron_on aufrufen. Es ist wirklich unsicher und es ist eine schlechte Praxis, eigene Funktionen zum Hinzufügen von Ereignissen aufzurufen, da dies durch ein beliebiges Ereignissystem dazu führen kann, dass die Funktion mehrmals aufgerufen wird. WordPress hat zufällig eine Reihe spezifischer Hooks für Plugins, um dieses Problem zu lösen: register_activation_hook und register_deactivation_hook. Diese Funktionen werden aufgerufen, wenn ein Plugin aktiviert (aktiviert) und deaktiviert (deaktiviert) wird. Auf diese Weise kann unsere Cron-Funktion nur einmal hinzugefügt werden. Jetzt können wir das Cron-Ereignis entfernen, wenn das Plugin nicht mehr verwendet wird. Um zu funktionieren, benötigen diese Funktionen zwei Informationen: die URL zu der Datei mit den Aktivierungs- und Deaktivierungsfunktionen (99% der Zeit funktioniert "__FILE__" hier einwandfrei) und den Namen der Aktivierungs- und Deaktivierungsfunktion. Wir erstellen auch eine neue Funktion (simple_optimization_cron_off) und füllen sie mit einem Aufruf einer anderen Funktion (wp_clear_scheduled_hook ('optimize_database')), um unser Cron-Ereignis zu löschen.


Schritt 6. ReadMe ausfüllen

Als letztes müssen wir für unser neues Plugin die Datei readme.txt ausfüllen. Die Datei readme.txt wird vom WordPress-Plugin-Verzeichnis verwendet, um alle Informationen anzuzeigen, die Sie zu Ihrem Plugin bereitstellen. Der beste Weg, um zu lernen, wie man eine effektive readme.txt-Datei schreibt, besteht darin, die Standardeinstellung von WP herunterzuladen und sie entsprechend Ihrem Plugin zu ändern. Da unsere so simpel war, habe ich persönlich Folgendes erreicht:


Das ist es!

Sie haben gerade erfolgreich Ihr erstes WordPress-Plugin geschrieben, das funktioniert und für das WP Plugins Directory bereit ist. Unterwegs lernten Sie Filter und Aktionen, die Verwendung globaler WP-Objekte, viel über die WordPress-Nomenklatur, die Interaktion mit der Datenbank, Cron-Ereignisse und Aktivierungs-/Deaktivierungs-Hooks. Wenn Sie Fragen haben, hinterlassen Sie bitte einen Kommentar und ich werde so schnell wie möglich antworten.

Der endgültige Code:

Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.