Das Einsteigerhandbuch zu WordPress-Taxonomien Ein benutzerdefiniertes Plugin

In dieser ganzen Serie haben wir uns WordPress-Taxonomien angesehen: Was sind sie, wie funktionieren sie, wie unterscheidet man sie zwischen den verschiedenen Typen und wie sie in der zugrunde liegenden Datenbank gespeichert werden.

Das einzige, was wir noch tun müssen, ist ein Plugin, das zeigt, wie man die API verwendet, um eigene Taxonomien zu implementieren. In diesem Beitrag werden wir genau das tun. 

Rückruf aus dem ersten Beitrag dieser Serie:

Taxonomie ist eines der Wörter, die die meisten Menschen niemals hören oder verwenden. Im Grunde ist eine Taxonomie eine Möglichkeit, Dinge zusammenzufassen.

In dieser ganzen Serie haben wir Fotografie und Videografie als Klassifizierungsbeispiele verwendet. Für das Plugin, das wir erstellen werden, werden wir sowohl hierarchische als auch nicht-hierarchische Taxonomien enthalten, die für beide Klassifizierungen relevant sind.

  1. Die hierarchischen Taxonomien enthalten Basistaxonomien von Fotografien und Videos.
  2. Die nicht-hierarchische Taxonomie dient dazu, den verwendeten Filmtyp anzugeben. Das mag sein Schwarzweiß, Farbe, Sepia, oder welche Farbe Sie auch angeben möchten.

Schließlich wird das Plugin mit dem vorhandenen Standardpost-Typ arbeiten, der mit WordPress ausgeliefert wird. Dies sollte die größtmögliche Flexibilität bieten, da es darum geht, ein Plugin zu erstellen, die Konzepte zu demonstrieren und in Ihrer eigenen Installation zu verwenden.

Meine Zolltaxonomien

Im Sinne des Beispiel-Plugins werden wir es nennen Meine Zolltaxonomien und wir bauen es in den folgenden Stufen auf:

  1. Wir bereiten die Core-Plugin-Datei vor, die den richtigen Headertext enthält, der für die Anzeige des Plugins im WordPress-Dashboard erforderlich ist.
  2. Wir richten den Code ein, der für die Ausführung des Core-Plugins erforderlich ist.
  3. Wir werden Code schreiben, der beide einführt Fotografien und Videos Taxonomie.
  4. Wir werden Code schreiben, der das einführt Genre Taxonomie.
  5. Wir testen dann das vollständige Plugin.

1. Der Plugin-Header

Bevor Sie etwas anderes tun, erstellen Sie ein Verzeichnis in WP-Inhalt / Plugins namens meine benutzerdefinierten Taxonomien und führen Sie eine Datei ein my-custom-taxonomies.php.

Fügen Sie in der Datei den folgenden Code-Kommentarblock hinzu:

An diesem Punkt sollten Sie sich in das WordPress-Dashboard einloggen, den Namen des Plugins sehen und aktivieren können. Natürlich wird nichts passieren, da wir noch nichts mit dem Quellcode gemacht haben.

Als nächstes müssen wir eine weitere Datei erstellen, die verwendet wird, um das Plugin tatsächlich mit Strom zu versorgen. Dies basiert auf objektorientierten Programmierprinzipien, so dass wir eine Datei erstellen, die aufgerufen wird class-my-custom-taxonomies.php.

Machen Sie sich noch keine Sorgen, ob Sie noch irgendeinen Quellcode damit füllen. Kehren wir zurück zu my-custom-taxonomies.php Fügen Sie eine Bedingung hinzu, um sicherzustellen, dass die Core-Plugin-Datei nicht außerhalb der WordPress-Umgebung ausgeführt werden kann.

Platzieren Sie dies direkt unter dem oben angegebenen Code-Kommentar.

2. Das Core Plugin ausführen

An dieser Stelle können wir Code schreiben, der das Plugin tatsächlich steuert. Definieren wir also die Klasse und eine Basisfunktion für die Initialisierung:

 * / class My_Custom_Taxonomies / ** * Initialisiert das Plugin, indem die erforderlichen Haken * registriert werden, um unsere benutzerdefinierten Taxonomien in WordPress zu erstellen. * * @since 1.0.0 * / public function init () 

Danach kehren wir zu zurück my-custom-taxonomies.php Fügen Sie einen Code hinzu, der die Datei enthält, sowie eine Methode, mit der eine Instanz der Klasse erstellt und ausgeführt wird:

drin();  custom_taxonomies_run ();

Jetzt haben wir alles, was wir brauchen, um unsere Hooks und Callbacks einzurichten, um unsere benutzerdefinierten Taxonomien zu erstellen.

3. einführen Fotografien und Videos

An diesem Punkt können wir mit der Einführung unserer Taxonomien beginnen. Wir konzentrieren uns zunächst auf unsere beiden hierarchischen Taxonomien - Fotografien und Videos.

Im Körper der Klasse von class-my-custom-taxonomies.php Datei, fügen Sie die folgende Funktion hinzu:

 'Fotos', 'singular_name' => 'Foto', 'edit_item' => 'Foto bearbeiten', 'update_item' => 'Foto aktualisieren', 'add_new_item' => 'Neues Foto hinzufügen', 'menu_name' => ' Fotografien '); $ args = array ('hierarchisch' => wahr, 'labels' => $ labels, 'show_ui' => true, 'show_admin_column' => true, 'umschreiben' => array ('slug' => 'photograph') ); register_taxonomy ('photograph', 'post', $ args); 

Diese Funktion ist verantwortlich für die Erstellung der Fotografien Taxonomie und wird zu gegebener Zeit aus der init-Funktion aufgerufen.

Nun machen wir das Gleiche für Videos:

 'Videos', 'singular_name' => 'Video', 'edit_item' => 'Video bearbeiten', 'update_item' => 'Video aktualisieren', 'add_new_item' => 'Neues Video hinzufügen', 'menu_name' => ' Videos '); $ args = array ('hierarchisch' => false, 'labels' => $ labels, 'show_ui' => true, 'show_admin_column' => true, 'rewrite' => array ('slug' => 'video') ); register_taxonomy ('video', 'post', $ args); 

Nennen wir diese beiden innerhalb der init-Funktion. Wir tun dies, indem wir diese Funktionen beim registrieren drin Haken wie von WordPress bereitgestellt:

Hier sollten wir in der Lage sein Neuen Beitrag hinzufügen und sehen Sie unsere neuen Taxonomieoptionen im Dashboard. Wenn nicht, überprüfen Sie Ihren Code mit dem, was oben angegeben wurde.

Nun, da wir unsere hierarchischen Taxonomien eingeführt haben, wollen wir unsere einführen Genre - oder unsere nicht-hierarchische Taxonomie.

4. einführen Genre

Das unterscheidet sich wirklich nicht so sehr von dem Code, den wir bisher geschrieben haben. Wirklich ist der Hauptunterschied das, anstatt zu spezifizieren hierarchisch wie wahr, wir setzen es als falsch.

 'Filmtyp', 'singular_name' => 'Filmtyp', 'edit_item' => 'Filmtyp bearbeiten', 'update_item' => 'Filmtyp aktualisieren', 'add_new_item' => 'Neuen Filmtyp hinzufügen', ' menu_name '=>' Filmtyp '); $ args = array ('hierarchisch' => false, 'labels' => $ labels, 'show_ui' => true, 'show_admin_column' => true, 'rewrite' => array (Filmtyp 'slug' => ') ')); register_taxonomy ('film-type', 'post', $ args); 

Dies führt zu einem anderen Typ von Benutzeroberflächenelement, das eher wie Tags aussieht als die oben angezeigten Kategorieoptionen.

Fügen Sie schließlich der init-Methode zusammen mit den übrigen Haken die folgende Zeile hinzu:

Beachten Sie, dass diese Funktionen eher wie Tags dienen, die Kategorien zuordnen. Um es noch einmal zu sagen, das ist einer der Hauptunterschiede bei hierarchischen und nicht-hierarchischen Taxonomien.

5. Testen des vollständigen Plugins

Jetzt können wir das Plugin drehen. Vorausgesetzt, Sie haben in diesem Lernprogramm alles richtig befolgt, sollten Sie in der Lage sein, einen neuen Beitrag zu erstellen und ihn mit einem Typ zu versehen Fotografieren oder eine Art von Video sowie eine Art von Film und die Änderungen nach dem Speichern oder Aktualisieren Ihres Beitrags beibehalten.

Wenn dies nicht der Fall ist, überprüfen Sie Ihren Code mit den Angaben, auf die hier verwiesen wird, und mit den Angaben im zugehörigen GitHub-Repository.

Fazit

Das ist der Leitfaden für Anfänger zu WordPress-Taxonomien. In der gesamten Serie haben wir uns eingehend mit der Definition von Taxonomien und deren Rolle in WordPress beschäftigt. Wir haben sogar einige unserer eigenen implementiert.

An diesem Punkt sollten Sie über ein solides Verständnis des Konzepts verfügen und wissen, wie Sie es in Ihr nächstes Projekt integrieren können.

Wenn nicht, zögern Sie nicht, Fragen, Kommentare oder allgemeines Feedback im untenstehenden Feld zu hinterlassen.