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

Die Einführung in die benutzerdefinierten Taxonomien für WordPress 3

by
Length:LongLanguages:

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

WordPress 3 füllt eine Reihe wichtiger Lücken in Richtung eines seriösen Content-Management-Systems. Die benutzerfreundliche Funktion für die benutzerdefinierten Taxonomien bietet den Website-Designern einige leistungsstarke Werkzeugs, um eine gute Informationsarchitektur zu schaffen. Erfahren Sie im heutigen Tutorial, was Taxonomien sind, warum sie nützlich sind und wie Sie sie verwenden können!


Was ist eine Taxonomie?

Taxonomien sind verschiedene Methoden zur Klassifizierung von Dingen.

Taxonomien sind verschiedene Methoden zur Klassifizierung von Dingen. In diesem Lernprogramm wird ein Beispiel für Beiträge zu verschiedenen Desktop-Computern verwendet, die anhand einer Reihe unterschiedlicher Kriterien klassifiziert werden können, darunter:

  • RAM-Größe
  • Größe der Festplatte
  • Geschwindigkeit der CPU
  • Art der CPU
  • Betriebssystem installiert
  • und so weiter...

Eine kurze Geschichte der WordPress-Taxonomien

Kategorien

Category Example

Vor Version 2.3 hatte WordPress nur eine generische Taxonomie, die "Kategorie für Posts" heißen. Das funktionierte aber gut für Blogs, da Sie eine Kategorie der obersten Ebene "Desktop-Computer" mit einer Unterkategorie "RAM" erstellen konnten, die Unterkategorien wie "Weniger als 1 GB", "1 GB", "2 GB" enthalten kann auf 4 GB " und so weiter. Eine zweite untergeordnete Kategorie von "Desktop-Computern" kann als "Betriebssystem" bezeichnet werden, mit Unterkategorien wie "Windows XP", "Mac OS", "Red Hat", "Ubuntu" usw.

Wenn ein System Kategorien zulässt, die in Unterkategorien unterteilt werden können, nennen wir es eine hierarchische Struktur. Das Beste, was Sie für eine seriöse Site-Architektur vor WordPress Version 2.3 tun konnten, war, eine große Hierarchie von Kategorien zu erstellen, wobei die Kategorien der obersten Ebene große Taxonomiegruppen darstellten.

Tags

Tags Example

Version 2.3 von WordPress hat eine andere Art von Taxonomie hinzugefügt, die Tags genannt wird. Während Kategorien in der Regel im Voraus durchdacht werden und spezifisch für die Inhaltstypen auf einer Website sind, bieten Tags eine frei formulierte, spontane Methode zur Klassifizierung von Inhalten.

Wenn Sie einen Beitrag über einen bestimmten Desktop-Computer schreiben, können Sie mit Tags ein oder mehrere Schlüsselwörter eingeben, z.B. "gaming", "tivo", "noisy fan" usw. Diese Schlüsselwörter sind möglicherweise nicht als Website-weite Kategorien sinnvoll, bieten jedoch eine zusätzliche Klassifizierung für einen Beitrag. Site-Besucher könnten dann später leicht alle mit "noisy fan" getaggten Beiträge finden. Die Freiform von Tags hilft uns jedoch nicht, ein solides Klassifizierungssystem um bekannte Werte wie Betriebssystemtypen oder CPU-Typen herum aufzubauen. Tags sind auch eindimensional und erlauben keine hierarchische Struktur.

Einstufige benutzerdefinierte Taxonomien

Single-Level Custom Taxonomies

Mit Wordpress Version 2.8 konnten benutzerdefinierte Klassifizierungsschemata mit nur wenigen Änderungen der Code auf Ihrer Site hinzugefügt werden. So konnten Sie eine Liste möglicher Betriebssysteme erstellen, die von einer Liste möglicher RAM-Typen getrennt ist, und so weiter. Es war nicht möglich, diese benutzerdefinierten Taxonomien in einer Hierarchie zu erstellen, die der Taxonomie der generischen Kategorien ähnelt.

Vollständig hierarchische benutzerdefinierte Taxonomien

Fully Hierarchical Custom Taxonomies

Schließlich bietet uns WordPress Version 3 vollständig hierarchische benutzerdefinierte Taxonomien. Beachten Sie, wie die hierarchische Natur es uns ermöglicht, die Taxonomie des Betriebssystems zu vereinfachen, indem beispielsweise alle verschiedenen Windows-Varianten unter eine übergeordnete "Windows" -Klassifikation verschoben werden. Auf diese Weise können Besucher alle Beiträge anzeigen, die mit einem Windows-Betriebssystem klassifiziert wurden, oder sie können spezifischer sein und beispielsweise nur Beiträge anzeigen, die mit Windows XP klassifiziert sind.


Erstellen einer benutzerdefinierten Taxonomie

Bearbeiten der Datei functions.php Ihres Themas

In WordPress Version 3 können Sie keine benutzerdefinierten Taxonomien über den Verwaltungsbildschirm erstellen. Um Ihre benutzerdefinierten Taxonomien zunächst ohne Plugin zu definieren, müssen Sie der Datei functions.php Ihres Themas ein wenig Code hinzufügen. Das ist nicht allzu schwierig - folge einfach meinem Beispiel.

Um benutzerdefinierte Taxonomien hinzuzufügen, müssen wir die Datei "functions.php" in Ihrem Themenverzeichnis bearbeiten. Ich verwende das Standardthema "20", das mit WordPress 3.0 geliefert wird, und meine WordPress-Installation befindet sich in einem Verzeichnis mit dem Namen "wp". Meine Datei functions.php befindet sich dann unter:
[website_root]/wp/wp-content/themes/twentyten/functions.php.


Hinzufügen der Taxonomien im Code

Wir bleiben beim Beispiel eines Desktop-Computers und fügen separate Taxonomien für RAM, Festplatte und Betriebssystem hinzu. An dieser Stelle fügen wir einfach die Taxonomien selbst hinzu, wie leere Container. Glücklicherweise können wir die verschiedenen Klassifizierungen wie "Windows XP" bequem über das Admin-Dashboard hinzufügen und verwalten.


Schritt 1 Eine Funktion zum Erstellen aller

Zunächst müssen wir eine Funktion erstellen, die alle benötigten Taxonomien erstellt. Wir nennen die Funktion "build_taxonomies". Fügen wir diese Funktion am Ende der Datei functions.php hinzu.


Schritt 2 Definieren der Taxonomien

Als nächstes müssen wir für jede Taxonomie, die wir erstellen möchten, eine bestimmte WordPress-Funktion mit den richtigen Parametern aufrufen. Hier werden die Funktion und ihre wichtigen Parameter erläutert.

  • internal_name: Wie wird diese Taxonomie in WordPress in den Datenbank- und Vorlagendateien aufgerufen?
  • object_type: Welche Arten von Inhalten können mit dieser Taxonomie klassifiziert werden? Mögliche Werte sind "Beitrag, Seite, Link" und dann Namen von benutzerdefinierten Beitragstypen, die wir in einem zukünftigen Lernprogramm erstellen werden.
  • Als nächstes folgt eine Reihe optionaler Parameter. Wir werden die wichtigsten hier in diesem Tutorial verwenden, aber eine vollständige Liste finden Sie auf der Seite Funktionsreferenz / register_taxonomy Codex. Die Parameter, die wir verwenden werden, sind:
  • hierarchisch: Wenn 'true', hat diese Taxonomie hierarchische Fähigkeiten wie WordPress-Kategorien. Wenn 'false', verhält sich diese Taxonomie ähnlich wie Freiform-Tags.
  • label: Dies ist der lesbare Name, der in der Benutzeroberfläche Ihrer Site zum Beschriften der Taxonomie verwendet wird.
  • query_var: Wenn 'true', können wir WordPress nach Posts fragen, die von der Auswahl für diese Taxonomie abhängen. Beispielsweise könnten wir nach allen Posts suchen, für die in der Betriebssystemtaxonomie "Windows" ausgewählt ist.
  • rewrite: Wenn 'true', verwendet WordPress beim Anzeigen einer Seite für diese Taxonomie benutzerfreundliche URLs. Eine Seite mit allen Posts mit dem ausgewählten Betriebssystem "Windows" wird beispielsweise durch die folgende URL dargestellt: https://domain.com/operating_system/windows

Unser Eintrag zum Hinzufügen der Betriebssystemtaxonomie sieht folgendermaßen aus:

Fügen Sie dies Ihrer Funktion "build_taxonomies" hinzu.

Mehr Informationen:

"register_taxonomy" wird im WordPress-Codex weiter definiert.


Schritt 3 Aufrufen der Funktion zum Erstellen von Taxonomien

Wir müssen der Datei "functions.php" eine weitere Zeile hinzufügen, damit unsere Funktion "build_taxonomies" tatsächlich ausgeführt wird. Wir werden die Funktion "build_taxonomies" mit dem "init" -Ereignis "hook", indem wir den folgenden Code hinzufügen:

Sie können diese Zeile überall hinzufügen, aber ich füge sie im Allgemeinen über der von uns aufgerufenen Funktion hinzu, sodass sie folgendermaßen aussehen würde:

Mehr Informationen:

Erfahren Sie mehr über add_action.


Hinzufügen von Klassifikationen zur neuen Taxonomie

Viewing taxonomy classifications

Sobald Sie die Taxonomie "Betriebssystem" korrekt zur Datei "functions.php" hinzugefügt haben, sollte sie als neues Element im Bereich "Beiträge" Ihres Dashboards angezeigt werden. Klicken Sie auf den Namen der Taxonomie, um die Klassifikationen hinzuzufügen und zu bearbeiten, die Sie einschließen möchten.

Adding taxonomy classifications

Jetzt können Sie Betriebssysteme genauso hinzufügen und bearbeiten, wie Sie generische Kategorien hinzufügen würden.


Weitere Taxonomien hinzufügen

Wenn Sie die Taxonomien "RAM" und "Festplatte" hinzufügen möchten, die dem Beispiel folgen sollen, fügen Sie Ihrer Datei functions.php einfach Folgendes hinzu:

Sobald Sie fertig sind, sieht der geänderte Abschnitt Ihrer Datei functions.php ungefähr so aus:


Erstellen eines Beitrags mit Ihrer neuen Taxonomie

Creating post with classifications

Wenn Sie ein paar neue Beiträge erstellen möchten, werden Ihre neuen Taxonomieoptionen im Bildschirm "Beitrag bearbeiten" angezeigt. Wählen Sie die Klassifikationen aus, die Ihrer Meinung nach für Ihre Beiträge gelten.


Anzeigen der verschiedenen Taxonomien eines Posts

Nichts, was wir bisher getan haben, kann von Ihren Website-Besuchern gesehen werden. Wir möchten, dass Posts zeigen, in welche benutzerdefinierten Taxonomien sie klassifiziert sind, genau wie Posts häufig ihre Kategorien und Tags enthüllen.

Dazu müssen wir in bestimmten Vorlagendateien nur eine einfache Ergänzung zur Schleife vornehmen.


Anzeigen von Taxonomieklassifikationen auf einzelnen Seiten

Im zwanzigsten und vielen anderen Themen werden die Kategorien und Tags eines Posts unter dem Haupttext aufgeführt. Wir werden benutzerdefinierte Taxonomieinformationen, falls vorhanden, direkt vor den Kategorie- und Tag-Informationen hinzufügen.

Taxonomy info on single posts

Um diese Funktion zu erreichen, müssen wir die Vorlagendatei "single.php" bearbeiten, die normalerweise aufgerufen wird, um einen einzelnen Beitrag anzuzeigen. Meine single.php-Datei befindet sich unter: [website_root]/wp/wp-content/themes/twentyten/single.php.


Schritt 1 Finden Sie den richtigen Ort, um Code hinzuzufügen

Suchen Sie in single.php die Zeile mit:

Dies erscheint kurz vor dem:

Dieses Div bekommt die Kategorien, Tags, Permalink und andere Daten für den aktuellen Beitrag. Wir werden unsere Taxonomie-Informationen direkt über diesem Div platzieren.


Schritt 2 Abrufen von Taxonomieinformationen zum aktuellen Beitrag

Füllen Sie einige Variablen aus, um die Ausgabe der Taxonomieinformationen und die verschiedenen Taxonomieinformationen zu speichern, die wir möglicherweise erwarten.

Hier rufen wir die WordPress-Funktion "get_the_term" mit den folgenden Parametern auf:

  • $post->ID : Die ID des aktuellen Beitrags.
  • 'operation_system' : Der Name der benutzerdefinierten Taxonomie, die wir auf Daten prüfen. Wir fragen, ob der aktuelle Beitrag Klassifizierungen in der Taxonomie 'Betriebssystem_' erhalten hat.
  • 'Operating System(s)' : Wenn etwas zurückgegeben wird, ist dies die Zeichenfolge, die wir vor uns haben möchten.
  • ', ' : Wenn mehrere Elemente zurückgegeben werden, ist dies die Zeichenfolge, durch die sie getrennt werden sollen.
  • '' : Wenn etwas zurückgegeben wird, ist dies die Zeichenfolge, die wir gerne dahinter haben würden. In diesem Fall möchten wir nichts hinter dem Ergebnis hinzufügen.

Wir werden dasselbe für die beiden anderen Taxonomien tun, von denen wir erwarten könnten, dass sie Daten enthalten:

Mehr Informationen:

Erfahren Sie mehr über "get_the_term_list".


Schritt 3 Formatieren Sie ggf. Ergebnisse aus Klassifizierungen

Überprüfen Sie jede der drei möglichen Taxonomien auf Ergebnisse. Wenn sie vorhanden sind, fügen Sie sie unserer Ausgabe sowie einem Zeilenumbruch hinzu.


Schritt 4 Zeigen Sie ggf. Klassifizierungsergebnisse an

Überprüfen Sie, ob die obigen Schritte dazu geführt haben, dass überhaupt Taxonomieinformationen ausgegeben wurden. Wenn Taxonomie-Informationen vorhanden sind, geben wir sie in einem Div der Klasse "entry-utility" aus.


Schritt 5 Überprüfen Sie Ihre Ergebnisse

Besuchen Sie eine Postseite, und Sie sollten alle unten aufgeführten benutzerdefinierten Taxonomieklassifizierungen sehen.

Taxonomy info on single posts 2

Anzeigen einer Liste von Posts nach Taxonomie-Klassifizierung

Jetzt teilen uns unsere einzelnen Beiträge mit, mit welchen benutzerdefinierten Taxonomien sie klassifiziert wurden. Wenn sie eine benutzerdefinierte Taxonomieklassifizierung auflisten, bieten sie auch einen Link zum Auflisten aller Beiträge unter dieser Klassifizierung. Wenn Sie beispielsweise in unserem Beitrag auf den Link "Mac OS" neben "Betriebssysteme" klicken, werden theoretisch alle Beiträge mit der Betriebssystemklassifizierung "Mac OS" aufgelistet.

Mit WordPress Version 3 ist es nicht sofort möglich. Wir müssen eine benutzerdefinierte Vorlagendatei für die Anzeige von Taxonomiearchiven erstellen, damit dies funktioniert. Mit WordPress können Besucher bereits alle Beiträge anzeigen, die einer bestimmten Kategorie zugewiesen sind, oder alle Beiträge, denen ein bestimmtes Tag zugewiesen wurde. Wenn wir hier fertig sind, können wir alle Beiträge, die bestimmten Klassifikationen zugeordnet sind, auch in unseren benutzerdefinierten Taxonomien anzeigen.

Um dies zu erreichen, müssen wir die Vorlagendatei "taxonomy.php" erstellen. WordPress wird versuchen, diese Datei jederzeit zu verwenden, wenn Beiträge in einer benutzerdefinierten Taxonomie aufgelistet werden sollen.


Schritt 1

Öffnen Sie die Datei "category.php", kopieren Sie den Inhalt und fügen Sie sie in eine neue Datei mit dem Namen "taxonomy.php" ein. Speichern Sie taxonomy.php im Themenverzeichnis. Zum Beispiel befindet sich meine taxonomy.php-Datei unter:
[website_root]/wp/wp-content/themes/twentyten/taxonomy.php.


Schritt 2 Informationen zur aktuellen Taxonomieklassifizierung abrufen

In der Datei taxonomy.php müssen Informationen zur aufgelisteten Taxonomie abgerufen werden. Wir werden wahrscheinlich den Namen und die Beschreibung (falls vorhanden) für die ausgewählte Klassifizierung wünschen.

Direkt unter <?php get_header(); ?>, füge die folgende Zeile hinzu:

Dadurch werden alle Informationen zur Taxonomie abgerufen, die diese Seite aufgerufen hat, und als Objekt in die Variable $ term zurückgegeben. Beispielsweise gibt die Klassifizierung "Mac OS" ein Objekt als solches zurück:


Schritt 3 Klassifizierungsname und Beschreibung anzeigen

Wir möchten den Seitennamen ändern, um den Besuchern mitzuteilen, was sie sehen. Da wir mit der Vorlage category.php begonnen haben, können wir die Zeile, in der der Kategoriename gedruckt wurde, ein wenig ändern, um unseren gewünschten Seitennamen und gegebenenfalls eine Beschreibung zu erhalten.

Ändern Sie die folgende Zeile aus category.php:

Um wie folgt zu lesen:

Dadurch wird der statische Text am Anfang der Zeile geändert und anschließend der Name der Klassifizierung eingefügt. (Hinweis: Für eine ordnungsgemäße Lokalisierung müssten wir der Datei "languages/twentyten.pot" die Option "Beiträge klassifiziert unter:" korrekt hinzufügen. Dies liegt außerhalb des Bereichs dieses Lernprogramms, aber beachten Sie die Übertretung hier.)

Fügen Sie dann Folgendes hinzu:

Wenn für diese Klassifizierung eine Beschreibung vorhanden ist, wird diese direkt unter dem Titel angezeigt.

Taxonomy Archive Page

Nachdem Sie Änderungen an taxonomy.php vorgenommen haben, besuchen Sie einen Ihrer Beiträge, dem eine benutzerdefinierte Taxonomieklassifizierung zugewiesen wurde. Aufgrund unserer früheren Arbeit in der Datei "single.php" sollte der Beitrag benutzerdefinierte Klassifikationen darunter anzeigen. Klicken Sie einfach auf eine dieser Klassifikationen, um die Taxonomieliste bei der Arbeit anzuzeigen.


Abschluss

Ich hoffe, dieses Tutorial hat klar erklärt, was Taxonomien sind, und Ihnen gezeigt, wie Sie sie in WordPress 3 als leistungsstarkes OrganisationsWerkzeug verwenden können. Ich hoffe, bald ein Tutorial zur Verfügung stellen zu können, in dem die benutzerdefinierten Post-Typen von WordPress, ihre enge Beziehung zu benutzerdefinierten Taxonomien und deren Verwendung erläutert werden. Vielen Dank, dass Sie sich die Zeit genommen haben, Nettuts zu besuchen!

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.