In den ersten beiden Teilen dieser Serie habe ich die WordPress-Datenbank und ihre Struktur vorgestellt und gezeigt, wie die Beziehungen zwischen verschiedenen Inhaltstypen verwaltet werden.
Hier werde ich die Inhaltstypen genauer betrachten und die verschiedenen Inhaltstypen in WordPress und deren Interaktion beschreiben.
Wenn wir an Inhalte in WordPress denken, denken wir normalerweise an Posts und Seiten. Aber so einfach ist das nicht. WordPress verwendet eine Reihe von Inhaltstypen, und Posts und Seiten sind nur zwei Beispiele dafür.
Wenn Sie die Arten von Inhalten verstehen, wie sie gespeichert werden und wie sie miteinander interagieren, können Sie sich mit WordPress auf einem höheren Niveau auseinandersetzen und erweiterte Abfragen für Ihre Designs und Plugins schreiben.
Lass uns einen Blick darauf werfen!
Es gibt vier Arten von Inhalten in WordPress:
Viele von ihnen verhalten sich ähnlich, wie wir sehen werden.
Posts sind der wichtigste Inhaltstyp in WordPress. Die Terminologie um sie herum kann verwirrend sein, da mit post irgendetwas in der wp_posts
Tabelle, aber es wird auch verwendet, um einen bestimmten Beitragstyp zu beschreiben. Das Hinzufügen einer der folgenden Informationen zu einer Abfrage mag überflüssig erscheinen, ist aber sinnvoll!
'post_type' => 'post'
Es gibt fünf Standardpost-Typen, die in WordPress integriert sind:
Wie ich im vorigen Tutorial zu dieser Serie erläutert habe und die Beziehungen zwischen Daten abdeckt, können Posts miteinander in Beziehung stehen. In der Regel wird definiert, an welchen Beitrag oder an welcher Seite ein Anhang angehängt wird und welche Seite einer anderen Seite übergeordnet ist.
Die ersten drei Beitragstypen sind WordPress-Entwicklern als Beiträge bekannt, aber es ist weniger offensichtlich, dass die letzten beiden Beiträge sind. Jede Revision wird im gespeichert wp_posts
Tabelle mit dem Beitrag, auf den sie sich bezieht, als post_parent
Feld), und Navigationsmenüelemente werden als Beiträge gespeichert und dann bei Anzeige des Menüs über eine Abfrage ausgegeben. Aus diesem Grund können Navigationsmenüs plötzlich verschwinden, wenn Sie das verwenden pre_get_posts ()
falsch filtern!
Sie können so viele zusätzliche Beitragstypen hinzufügen, wie Sie für Ihre Site benötigen, indem Sie benutzerdefinierte Beitragstypen erstellen. Hierbei handelt es sich lediglich um zusätzliche Beitragstypen, die sich wie Posts, Seiten oder Anhänge verhalten, je nachdem, wie Sie sie beim Registrieren des Beitragstyps eingerichtet haben.
Das Diagramm unten zeigt die wp_posts
Tabelle und die Tabellen, auf die es sich bezieht:
Kommentare werden in einer eigenen Datenbanktabelle gespeichert, wp_kommentare
. Sie arbeiten auf ähnliche Weise wie Postings, da jedem Metadaten über die wp_commentmeta
Tabelle, haben aber unterschiedliche Inhalte und daher sind für ihre Tabelle unterschiedliche Felder erforderlich.
Kommentare werden über eine Eins-zu-Viele-Beziehung mit Beiträgen verknüpft und sie werden auch mit der comment_parent
Feld - wird verwendet, um Kommentare zu identifizieren, die Antworten auf andere Kommentare sind. Sie können auch optional mit dem verknüpft werden wp_users
Tabelle, wenn sie von Benutzern erstellt werden, die angemeldet sind.
Das Diagramm zeigt die wp_kommentare
Tabelle und ihre Beziehungen:
Benutzer haben ihre eigene Tabelle, wp_users
, und haben auch Metadaten in der wp_usermeta
Tabelle. Auf den ersten Blick scheinen sich Benutzer als Inhaltstyp zu unterscheiden, der sich von Posts unterscheidet, aber sie sind sich ähnlicher als Sie denken - sie können abgefragt und in einem Autorenarchiv ausgegeben werden, und sie haben Inhalte in Form von biografischen Daten über die Benutzer. Dieser Inhalt ist ganz anders aufgebaut als Beiträge, Links und Kommentare, weshalb Benutzer eine eigene Tabelle benötigen.
Das Diagramm zeigt die wp_users
Tabelle und ihre Beziehungen:
Sie erfahren mehr über Benutzerdaten und deren Beziehung zu anderen Tabellen in einem späteren Teil dieser Serie.
Der endgültige Inhaltstyp ist der Link. Diese wurden von WordPress fast vollständig eingestellt, die Blogroll ist seit Version 3.5 nicht mehr standardmäßig verfügbar.
Links funktionieren auf ähnliche Weise wie Posts, da sie Inhalte haben und Taxonomiebedingungen zugewiesen werden können. Sie unterscheiden sich von Posts jedoch darin, dass sie recht unterschiedliche Felder haben, in denen Daten über das Linkziel, seine Beschreibung usw. gespeichert werden. Sie sind nicht mit Benutzern verknüpft, daher kann kein Autor zugewiesen werden. Außerdem haben sie kein Feld zum Identifizieren eines übergeordneten Elements. Sie können also nicht an einen Beitrag angehängt werden. Sie können jedoch Taxonomien verwenden, um sie in Archivseiten einzubinden.
Das wp_links
Tabelle und ihre Beziehungen zu anderen Tabellen werden unten gezeigt:
Von den vier oben genannten Inhaltstypen können drei Metadaten zugewiesen werden:
Ich werde mir Metadaten später in dieser Serie genauer ansehen und Ihnen zeigen, wie sie gespeichert werden.
Wie bereits erwähnt, verwendet WordPress verschiedene Inhaltstypen, um Daten und die Beziehungen zwischen ihnen zu speichern. Die in der Datenbank gespeicherten Inhaltstypen sind nicht nur auf Beiträge und Seiten beschränkt, sondern umfassen auch Ihre eigenen benutzerdefinierten Beitragstypen sowie andere Inhaltstypen wie Anhänge, Revisionen und Navigationsmenüelemente.
Wenn Sie wissen, was diese sind und wie sie funktionieren, sowie die Ähnlichkeiten und Unterschiede zwischen ihnen, können Sie leistungsfähigere WordPress-Designs und Plugins entwickeln.