Advertisement
  1. Code
  2. Theme Development

Innovative Verwendung von WordPress-Post-Typen und Taxonomien

Scroll to top
Read Time: 10 min

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

Mit der Veröffentlichung von Wordpress 3.0 wurden zwei großartige Möglichkeiten zur besseren Organisation und Anzeige von Inhalten eingeführt: Beitragstypen und Taxonomien. Diese beiden Fortschritte verbessern die Rolle von Wordpress als umfassendes Content-Management-System und beweisen weiterhin, dass WP nicht nur eine Blog-Plattform ist. Wenn 3.1 mit Postformaten veröffentlicht wird, müssen Sie unbedingt wissen, wie Posttypen und Taxonomien verwendet und implementiert werden.

Tutorial now on Wptuts+Tutorial now on Wptuts+Tutorial now on Wptuts+

Was wir behandeln werden

In diesem Tutorial werde ich Ihnen Folgendes erläutern:

  • Übersicht über Beitragstypen und Taxonomien in Wordpress 3.0
  • Wie man Beitragstypen und Taxonomien in Ihre Themen integrieren kann
  • Beispiele aus der Praxis, wie Sie Post-Typen und Taxonomien in Ihren Projekten auf innovative Weise einsetzen können

Bis Sie diese Schritte abgeschlossen haben, hoffe ich, Ihre Projekte voranzutreiben, indem Sie andere großartige Möglichkeiten zur Integration dieser Organisationselemente in WordPress untersuchen.


Ein kurzer Überblick über WordPress-Beitragstypen

Wenn Sie an Beitragstypen denken, ist Organisation das wichtigste Wort, an das Sie sich erinnern sollten. Der Beitragstyp selbst fügt keine wirklichen Funktionen hinzu, ermöglicht es uns jedoch, Wordpress-Inhalte besser zu organisieren und Administrator-Dashboards zu erstellen, die spezifischer für den Typ der Website sind, mit der wir arbeiten.

Hier sind einige wichtige Dinge, die Sie bei der Arbeit mit Beitragstypen beachten sollten:

  • Wenn Sie einen neuen Beitragstyp erstellen, wird im Hauptadministrationsmenü auf der linken Seite ein neues Navigationselement der oberen Ebene angezeigt. Von dort aus stehen alle Standard-Post- und Seiteneditoren zur Verfügung.
  • Die URL-Zeichenfolge für einen neuen Beitragstyp lautet: https://yoursite.com/{post-type}/{title}/.
  • Sie können Archivseiten vom Typ "Post" erstellen, genau wie Sie es mit Kategorien tun, und Sie können sogar spezielle Vorlagendateien erstellen, indem Sie eine archive-{post-type}.php-Datei erstellen.

"Auf die gleiche Weise, wie Beiträge in einem eigenen Archiv mit archive.php angezeigt werden, verwenden benutzerdefinierte Beitragstypen archive-{posttype}.php."

Weitere Informationen zum Integrieren von Beitragstypen, Abfragen von Beitragstypen und allgemeinen Funktionen finden Sie im Codex hier.


Post-Typen über Functions.php integrieren

Das Integrieren von Beitragstypen ist lediglich eine Frage der Einbeziehung der Funktion register_post_type. Sobald Sie dies in Ihre Datei functions.php aufgenommen haben, sollte Ihr Navigationsmenü ungefähr so aussehen:

our original wordpress menu

dazu:

our new wordpress menu with our post type

Um benutzerdefinierte Beitragstypen zu erstellen, öffnen Sie die Datei functions.php Ihrer Vorlage in einem Editor und platzieren Sie die folgende Funktion in der Datei:

Aufgeschlüsselt fügt das die Funktion create_post_type hinzu und registriert den Post-Typ mysite_reviews.

Sie fragen sich vielleicht, warum ich den post_type mysite_reviews benannt habe und nicht nur Bewertungen. Ich habe den Namen auffälliger gemacht, um sicherzustellen, dass mein Beitragstyp nicht die benutzerdefinierten Namen von Beitragstypen aus anderen Plugins oder Themen beeinträchtigt.

Eine weitere freundliche Erinnerung: Ihre benutzerdefinierten Beitragstypen dürfen nicht länger als 20 Zeichen sein, da dies die Grenze der Datenbankspalte darstellt.

Hier ist eine Zusammenfassung der wichtigen Post-Typ-Parameter, die ich oben eingestellt habe:

  • labels - Mit Wordpress können wir alles vom Namen des Beitragstyps bis zum Etikett beschriften, um neue Beiträge hinzuzufügen. Eine vollständige Liste finden Sie hier. In der obigen Funktion habe ich den Namen des Beitragstyps und seinen singulären Namen beschriftet.
  • public - Wenn auf true gesetzt
  • menu_position - Ich habe dies auf 5 gesetzt, wodurch der Beitragstyp direkt unter "Posts" platziert wird. Die anderen Platzierungen lauten wie folgt: null (unter den Kommentaren), 0 (unter den Medien), 20 (unter den Seiten), 60 (unter dem ersten Trennzeichen) und 100 (unter dem zweiten Trennzeichen)
  • rewrite - Damit unser eigentlicher Begriff "mysite_reviews" nicht in die URL aufgenommen wird, setzen wir den Slug auf "Bewertungen", was auf lange Sicht für unsere Besucher, Links und SEO viel besser sein wird.

Für mehr Informationen

Eine vollständige Liste der Parameterargumente für Beitragstypen finden Sie hier.


Anzeigen von Beitragstypen in Wordpress-Designs

Da Wordpress-Beitragstypen lediglich eine Erweiterung des vorhandenen Klassifizierungssystems darstellen, ähnelt die Anzeige in einem Thema dem bereits vorhandenen. Derzeit gibt es drei Hauptmethoden, um benutzerdefinierte Beitragstypen in Ihren Themen anzuzeigen:

  • Abfrage posten
  • Einzelne Beitragsvorlage
  • Archivvorlage

Anzeige per Post Query

Um den neuen Beitragstyp mysite_reviews anzuzeigen, müssen Sie die Vorlagendatei öffnen, in der Sie sie anzeigen möchten (in meinem Fall erstelle ich normalerweise eine benutzerdefinierte home.php für Vorlagen) und den folgenden Code eingeben:

Dadurch wird einfach eine neue Wordpress-Schleife erstellt, in der der Titel und ein Auszug aus den 10 neuesten Einträgen im Beitragstyp mysite_reviews angezeigt werden.

Anzeige über einzelne Postvorlage

So wie Sie die Anzeige einzelner Beiträge über die single.php-Datei eines Themas anpassen können, können Sie auch die Art und Weise anpassen, in der Ihre einzelnen Beitragstypeinträge angezeigt werden. Der einfachste Weg, dies zu tun, besteht darin, ein Duplikat der single.php-Datei Ihres Themas zu erstellen und es in single-{posttypename}.php umzubenennen. Von dort aus können Sie diese Datei an Ihre Spezifikationen anpassen. In dem obigen Beispiel benötigen wir eine einzelne Post-Vorlage mit dem Namen single-mysite_reviews.php.

Anzeige nach Archivvorlage

Während diese Funktion erst in WP 3.1 verfügbar ist, können Beitragstypen auch im Archivstil angezeigt werden, indem Sie in Ihrem Thema eine Datei mit dem Namen archive- {posttypename} .php erstellen. Wenn wir also ein Archiv für den Beitragstyp erstellen, erstellen wir eine Archivvorlage mit dem Namen archive-mysite_reviews.php und legen sie in unserem Vorlagenordner ab.

Mit benutzerdefinierten Vorlagen für Beitragstypen können benutzerdefinierte Themenersteller Abonnement- und Mitgliedschaftswebsites einfacher erstellen, indem sie den Inhalt dieser bestimmten Beiträge und Seiten auf bestimmte Benutzergruppen beschränken.


Ein kurzer Überblick über WP-Taxonomien

Ich werde hier nicht zu sehr ins Detail gehen, da Paul Kaiser bereits einen großartigen Überblick über Taxonomien und den Code geschrieben hat, der zur Implementierung der Funktion erforderlich ist (siehe das Tutorial hier). Das Schlüsselwort, an das Sie sich erinnern sollten, wenn Sie über Taxonomien nachdenken, ist die Klassifizierung. Sie ähneln Tags, ermöglichen jedoch eine tiefere, inhaltsspezifischere Klassifizierung.

In Wahrheit sind sie eine äußerst leistungsstarke Methode, um verschiedene Elemente auf vielfältige Weise zu gruppieren.

Angenommen, ich habe den Beitragstyp Bewertungen von oben verwendet. Da ich diesen breiten Beitragstyp definitiv klassifizieren möchte, kann ich Taxonomien erstellen wie:

  • Filmkritiken
  • Bücherbewertungen
  • Produktrezensionen

Mit benutzerdefinierten Taxonomien könnte ich noch tiefer in die Klassifizierung der oben genannten Taxonomien einsteigen. Ich könnte in Filmgenres, Buchautoren und Produktmärkte einsteigen. Zusammen mit den Beitragstypen verbessern diese die Content-Management-Funktionen von Wordpress erheblich.


Integration von Taxonomien über Functions.php

Insgesamt sind Taxonomien ziemlich einfach in Ihre Datei functions.php zu implementieren. Denken Sie daran, dass Sie mit ihnen hierarchisch arbeiten oder sie wie Tags behandeln können. Je komplexer Sie möchten, desto größer ist die Schwierigkeit. In beiden Fällen finden Sie hier einen kurzen Überblick darüber, wie Sie diese in Ihr Thema integrieren können.

Öffnen Sie erneut Ihre Datei functions.php und geben Sie den folgenden Code ein:

Um dies aufzuschlüsseln, geben wir der Taxonomie zuerst einen formalen Namen ("movie_review") und platzieren ihn unter dem Beitragstyp "mysite_reviews", den wir zuvor erstellt haben.

Dann übergeben wir diese Werte:

Dies liefert die folgenden Argumente:

  • hierarchical - Bei der Einstellung "true" verhält sich die Taxonomie eher wie eine Kategorie. Es kann übergeordnete Taxonomien und verschachtelte Taxonomien geben, die eine tiefere Klassifizierungstiefe ermöglichen. Wenn sie auf "false" gesetzt sind, verhalten sie sich wie Tags.
  • label - Wie bei den oben genannten Beitragstypen ist dies das Label, das die Taxonomie öffentlich erhält.
  • query_var - Wenn diese Taxonomie auf "true" gesetzt ist, wird sie zu einem abfragbaren Element.
  • rewrite - Hiermit wird das Umschreiben der URL festgelegt. Jetzt werden Beiträge in dieser Taxonomie als http://mysite.com/movie-reviews/{post title}/ angezeigt.

Das Endergebnis in unserem Admin-Navi sollte folgendermaßen aussehen:

New Wordpress taxonomy in admin dashboard navigation

Darüber hinaus können wir in diese Schnittstelle eintauchen und weitere Klassifizierungskategorien und -strukturen hinzufügen. Diese Schnittstelle ähnelt der Kategorieschnittstelle, mit der Sie möglicherweise bereits vertraut sind.

Taxonomy user interface

Über diese Oberfläche können Sie die Slugs der verschiedenen Kategorien in Ihrer Taxonomie bearbeiten, neue Kategorien erstellen und übergeordnete und untergeordnete Kategorien festlegen.

Für mehr Informationen

Eine vollständige Liste der Parameterargumente für Taxonomien finden Sie hier.


Anzeigen von Taxonomien in Wordpress-Designs

Derzeit gibt es drei Hauptmethoden, um benutzerdefinierte Beitragstypen in Ihren Themen anzuzeigen:

  • Taxonomie-Wolke
  • Benutzerdefinierte Taxonomie-Abfrage
  • Benutzerdefinierte Taxonomieliste

Taxonomie-Wolke

So wie es Tag-Clouds gibt, gibt es Taxonomie-Clouds. Zur Vereinfachung verwenden sowohl Tags als auch Clouds die Funktion wp_tag_cloud. Um ein Array von Taxonomiekategorien in einer Cloud anzuzeigen, verwenden wir den folgenden Code:

Weitere Informationen zur Funktion und ihren Parameterargumenten finden Sie im Codex.

Benutzerdefinierte Taxonomie-Abfrage

Taxonomien können auch in benutzerdefinierte Abfragen einbezogen werden, genau wie bei den oben genannten Beitragstypen. Um beispielsweise Inhalte aus der Taxonomie movie_genre anzuzeigen, müssen Sie den folgenden Code in unsere Vorlagendatei einfügen:

Zunächst verwenden wir das Argument tax_query, damit wir Parameter übergeben können, mit denen wir nach Slug oder Begriffen abfragen und genauere Abfrageergebnisse zurückgeben können. In diesem Beispiel haben wir Beiträge angezeigt, die als "comedy" in der benutzerdefinierten Taxonomie "movie_genre" gekennzeichnet sind. Wie bei den Beitragstypen können wir auch hier die Anzahl der von dieser Abfrage zurückgegebenen Beiträge begrenzen.

Benutzerdefinierte Taxonomielisten

Um eine durch Kommas abgegrenzte Liste der Beiträge nach Taxonomie anzuzeigen, müssen Sie lediglich Folgendes in die Schleife einfügen:

Es gibt andere Anzeigeoptionen für diese Liste, und die Parameter finden Sie hier.


Verwenden von Beitragstypen und Taxonomien in Ihrem nächsten Projekt

Jetzt, wo wir die Schrauben und Muttern haben, denke ich: "Warum interessieren mich diese Dinge?" ist eine wirklich faire Frage. Die Möglichkeiten bei Posttypen und Taxonomien, insbesondere bei der Arbeit mit Kunden, die häufig zu beschäftigt sind, um die Feinheiten einer Site zu verwalten, sind endlos. Dies spart meiner Meinung nach Zeit beim Erstellen neuer Verwaltungsfunktionen und beim Aktualisieren von Plugins und öffnet Türen zu neuen Möglichkeiten mit viel weniger Aufwand (und Codierung).

Im Folgenden sind einige Ideen aufgeführt, wie ich diese in die eigentliche Arbeit integrieren kann:

1. Überprüfen Sie die Websites

Erstens könnte eine Überprüfungssite von den oben aufgeführten benutzerdefinierten Vorlagenoptionen (einzeln und archiviert) profitieren.

Hier sind einige weitere Beitragstypen und Taxonomien, die Sie auf einer Überprüfungssite implementieren können:

  • Post Type - Filmkritiken
  • Taxonomies - Genre, Schauspieler, Regisseur
  • Post Type - Buchbesprechungen
  • Taxonomies - Genre, Autor, Verlag
  • Post Type - Produktbewertungen
  • Taxonomies - Produktkategorie, Preis

2. Immobilien-Listing-Sites

Zwar gibt es einige gute Vorlagen für Websites mit Immobilienlisten, doch mit Beitragstypen und Taxonomien können Kreative benutzerdefinierte Vorlagen erstellen, die sowohl von Kunden als auch von Webmastern problemlos verwaltet werden können. Hier sind nur einige Ideen, die Sie in Ihrem nächsten Projekt verwenden können:

  • Post Type - Auflistungen
  • Taxonomies - Fläche, Agent, Preis, Zimmer
  • Post Type - Agenten

3. Ereignislisten

Eine Sache, die Wordpress (meiner Meinung nach) wirklich fehlt, ist ein gutes Event-Management-System. Post-Typen und Taxonomien könnten dies leicht beheben, indem sie ein System anbieten, mit dem monatliche Ereignisse nach Ort, Tag oder einem anderen denkbaren System klassifiziert werden können.

4. Abonnementseiten

Mit der Erstellung eines neuen Beitragstyps und einer neuen Vorlage können Sie eine benutzerdefinierte Premium-Kategorie für Ihr Blog oder Ihre Website erstellen und ein Zahlungsgateway integrieren, um Ihre eigene Mitgliederseite zu erstellen.

5. E-Commerce

Durch Erstellen eines Produktposttyps und einer Produktpostvorlage können Sie auf einfache Weise Produkte zum Verkauf auf Ihrer Website hinzufügen und anzeigen. Darüber hinaus würden Taxonomien eine einfache Produktorganisation ermöglichen.


Was machen wir jetzt?

Ich hoffe, dieses Tutorial hat die Post-Typen und Taxonomien in Wordpress 3.0 erklärt und erklärt, warum sie eine äußerst wertvolle Ressource für die Implementierung in Ihren Projekten sind. Ich weiß, dass es viele Befürworter von Plugins gibt (und ich bin selbst Plugin-Autor), aber ich hoffe, dass ich festgestellt habe, dass die Implementierung dieser Dinge eine sehr einfache Aufgabe ist und Zeit für Sie und Ihren Kunden spart auf lange Sicht.

Die Liste der oben genannten Ideen ist bestenfalls klein, daher würde ich gerne hören, wie Sie sie in Ihre Projekte implementiert haben oder vielleicht für andere Zwecke, die ich nicht aufgelistet habe.

Vielen Dank fürs Lesen!

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Code tutorials. Never miss out on learning about the next big thing.
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.