{"id":55,"date":"2017-02-10T04:06:55","date_gmt":"2017-02-10T03:06:55","guid":{"rendered":"http:\/\/evileu.de\/zum-schwarzen-pinguin\/?p=55"},"modified":"2017-02-10T04:06:55","modified_gmt":"2017-02-10T03:06:55","slug":"jetzt-gehts-endlich-los-die-zentrale-wordpress-tabelle-wp_posts","status":"publish","type":"post","link":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/2017\/02\/10\/jetzt-gehts-endlich-los-die-zentrale-wordpress-tabelle-wp_posts\/","title":{"rendered":"Jetzt gehts endlich los: die zentrale WordPress-Tabelle wp_posts"},"content":{"rendered":"<h2>Ein erster Blick mit phpmyadmin<\/h2>\n<p>Also, die Testinstallation steht ja jetzt, wir k\u00f6nnen einen freien Blick mit phpmyadmin auf die WordPress-Tabellen werfen. Das sind nicht uferlos viele, eine jungfr\u00e4uliche WordPress-Instanz kommmt mit nur 12 Tabellen aus. Das k\u00f6nnen sp\u00e4ter je nach installierten Plugins noch viel mehr werden, aber wir konzentrieren uns hier mal auf die Grundlagen.<\/p>\n<h3>Anmerkung:<\/h3>\n<p>Wer es ganz genau wissen will: im WordPress-Codex sind die verschiedenen Tabellen nat\u00fcrlich genau beschrieben, ein \u00dcbersichtsdiagramm gibt es auch. Schaut mal in der <a href=\"https:\/\/codex.wordpress.org\/Database_Description\">Database Description<\/a>, da kann man alles genauestens nachlesen. Ich mach hier trotzdem mal mit meiner vereinfachenden Erkl\u00e4rung weiter, der Codex ist f\u00fcr WordPress-Beginner doch ein wenig starker Tobak \ud83d\ude09<\/p>\n<div id=\"attachment_102\" style=\"width: 979px\" class=\"wp-caption alignnone\"><img aria-describedby=\"caption-attachment-102\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-102 size-full\" src=\"http:\/\/evileu.de\/systemberatung\/wp-content\/uploads\/2017\/02\/12_tabellen.jpg\" alt=\"12_tabellen\" width=\"969\" height=\"532\" \/><p id=\"caption-attachment-102\" class=\"wp-caption-text\">12_tabellen<\/p><\/div>\n<h2>Und wo sind die Beitr\u00e4ge?<\/h2>\n<p>Uns interessiert zun\u00e4chst mal nur eine Tabelle, die n\u00e4mlich, die unsere Beitr\u00e4ge enth\u00e4lt, denn die sind ja das Leben und die Seele unseres Blogs. Wenn sie bei der Installation kein anderes als das Standard-Datenbankpr\u00e4fix gew\u00e4hlt haben, hei\u00dft diese Tabelle wp_posts, und ich werde sie auch in Zukunft immer so anreden, damit es keine Verwechslung mit nicht-Wordpress-Tabellen gibt. Vielleicht hei\u00dft sie bei ihnen auch xyz_posts oder meinedatenbank_posts, das kommt wie gesagt auf ihr Pr\u00e4fix an, das haben sie selber zu verantworten \ud83d\ude09<\/p>\n<h2>Inhalt der Tabelle wp_posts<\/h2>\n<p>In der wp_posts also stecken alle Ihre Beitr\u00e4ge, und wenn man sich die Tabelle im phpmyadmin mal n\u00e4her anschaut, f\u00e4llt zuerst auf, da\u00df es jetzt schon wesentlich mehr Datens\u00e4tze als Blogbeitr\u00e4ge gibt. In der wp_posts werden n\u00e4mlich auch noch andere Objekte gespeichert, die von ihnen bereits erstellten Seiten zum Beispiel, und auch alle Bilder, die sie schon hochgeladen haben, aber dazu sp\u00e4ter mehr. H\u00f6rte ich da ein erstes leises Aufjaulen der alten Datenbankhasen &#8211; was haben die Beitr\u00e4ge und die Bilder in ein und derselben Tabelle zu suchen, wo bleibt da die Entity-Relationship? Gemach, gemach. Dazu sp\u00e4ter mehr. Nehmen sie es jetzt einfach so hin, die jungen Kollegen haben sich schon etwas dabei gedacht, so unterschiedliche Objekte in ein und dieselbe MySQL-Tabelle zu stecken. Aber ich schweife ab, zu dem Thema sp\u00e4ter mehr.<\/p>\n<h2>Datenfelder der Tabelle wp_posts<\/h2>\n<p>Die wp_posts hat 23 Datenfelder, und die meisten davon haben selbsterkl\u00e4rende Namen, da gibt&#8217;s nicht viel zu r\u00e4tseln.<\/p>\n<div id=\"attachment_104\" style=\"width: 484px\" class=\"wp-caption alignnone\"><img aria-describedby=\"caption-attachment-104\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-104 size-large\" src=\"http:\/\/evileu.de\/systemberatung\/wp-content\/uploads\/2017\/02\/wp_posts_23_felder-1024x618.jpg\" alt=\"wp_posts_23_felder\" width=\"474\" height=\"286\" \/><p id=\"caption-attachment-104\" class=\"wp-caption-text\">wp_posts_23_felder<\/p><\/div>\n<p>Die Felder post_author, post_date, post_content, post_title usw. sind auch f\u00fcr Nicht-Wordpress-Experten recht selbsterkl\u00e4rend, man \u00fcbersetzt einfach frei heraus (Beitrags-) Author, Datum, Inhalt und Titel, und da haben wir doch schon die Grundlagen zu einigen h\u00fcbschen Spielereien auf der Datenbank. Auch den post_type und den post_status nehmen wir noch mit, die helfen uns beim aufdr\u00f6seln, um was f\u00fcr eine Art von Datensatz es sich handelt. Bei einem ver\u00f6ffentlichten Beitrag beispielsweise ist hat der post_type\u00a0 den Wert &#8222;post&#8220; und der post_status den Wert &#8222;publish&#8220;, das ist ja auch nicht unlogisch. Bei einer statischen Seite hat der post_type den Wert &#8222;page&#8220;&#8230; ooch da g\u00e4bs noch viel dazu zu sagen, aber ich will hier jetzt am Anfang noch nicht so viel Verwirrung stiften.<\/p>\n<p>Wir nehmen also unsere paar selbsterkl\u00e4renden Datenbankfelder und stricken uns eine Abfrage oder zwei. Aber das machen wir nicht im phpmyadmin, das ist ja unsportlich, schlie\u00dflich gehts hier um WordPress. Und wir m\u00f6chten unsere tollen Abfrageergebnisse ja auch in unserem Blog ver\u00f6ffentlichen, nicht wahr? Aber dazu gibts einen neuen Beitrag!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ein erster Blick mit phpmyadmin Also, die Testinstallation steht ja jetzt, wir k\u00f6nnen einen freien Blick mit phpmyadmin auf die WordPress-Tabellen werfen. Das sind nicht uferlos viele, eine jungfr\u00e4uliche WordPress-Instanz kommmt mit nur 12 Tabellen aus. Das k\u00f6nnen sp\u00e4ter je nach installierten Plugins noch viel mehr werden, aber wir konzentrieren uns hier mal auf die [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1,7,2],"tags":[],"_links":{"self":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts\/55"}],"collection":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/comments?post=55"}],"version-history":[{"count":1,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts\/55\/revisions"}],"predecessor-version":[{"id":56,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts\/55\/revisions\/56"}],"wp:attachment":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/media?parent=55"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/categories?post=55"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/tags?post=55"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}