{"id":6974,"date":"2015-02-17T14:58:08","date_gmt":"2015-02-17T12:58:08","guid":{"rendered":"http:\/\/172.31.3.127\/?p=6974"},"modified":"2019-12-24T10:12:11","modified_gmt":"2019-12-24T09:12:11","slug":"wordpress-look-fuer-statische-seiten-und-externe-php-apps","status":"publish","type":"post","link":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wordpress-look-fuer-statische-seiten-und-externe-php-apps\/","title":{"rendered":"WordPress-Look f\u00fcr statische Seiten und externe PHP-Apps"},"content":{"rendered":"<p>Statische Webseiten, eine externe Bildergalerie oder eine bestehende Datenbank-Anwendung soll im selben Design erscheinen wie das Blog? Mit einem Trick l\u00e4sst sich WordPress sehr einfach in andere PHP-Apps und Webseiten integrieren.&nbsp;<!--more--><\/p>\n<p>WordPress ist h\u00e4ufig der Mittelpunkt einer Website. Sollen externe Anwendungen integriert werden, sucht man daher instinktiv nach einem WordPress-Plugin, um diese Anwendung zu integrieren.<\/p>\n<h2>Um die Ecke gedacht<\/h2>\n<p>Tats\u00e4chlich funktioniert es umgekehrt aber viel besser: WordPress-Funktionen und -Design lassen sich sehr einfach in externe Seiten und PHP-Anwendungen einbinden. Dieser Ansatz hat nebenbei den Vorteil, dass die Anwendung komplett unabh\u00e4ngig von WordPress und dort eingesetzter Plugins l\u00e4uft. Das reduziert das Risiko k\u00fcnftiger Inkompatibilit\u00e4ten und bei Sicherheitsl\u00fccken.<\/p>\n<p>Nat\u00fcrlich l\u00e4sst sich mit diesem Trick auch problemlos der \u201eDesign-Rahmen\u201c von WordPress um bereits bestehende, statische HTML-Seiten herumbauen. Diese Seiten wirken dann wie ein Teil von WordPress, ohne den Content tats\u00e4chlich in das CMS importieren zu m\u00fcssen.<\/p>\n<h2>Und so geht\u2019s:<\/h2>\n<p>Mit einer einzigen PHP-Code-Zeile im <em>head<\/em>-Bereich integriert man die WordPress-Funktionen:<\/p>\n<p><code>&lt;?php require('\/serverpfad\/zur\/wordpress-installation\/wp-blog-header.php'); ? &gt; <\/code><\/p>\n<p>Damit stehen die Grundfunktionen zur Verf\u00fcgung. Jetzt kannst Du Code-Elemente aus den WordPress-Theme-Dateien herauskopieren und \u00fcbernehmen kann, die Du wiederverwenden m\u00f6chtest. Am h\u00e4ufigsten wird das der Header-Bereich mit Header-Grafik und Navigation sein:<\/p>\n<p><code>&lt;?php get_header(); ? &gt; <\/code><\/p>\n<p>Umgekehrt ist es sinnvoll, in den WordPress-Navigationsmen\u00fcs einen Link zu der externen Anwendung oder Seite einzubauen.<\/p>\n<p>Wo genau die gew\u00fcnschten WordPress-Elemente in die externe Anwendung integriert werden m\u00fcssen, h\u00e4ngt nat\u00fcrlich stark vom strukturellen Aufbau der jeweiligen Applikation ab. Hier ist eine genauere Auseinandersetzung mit den Templates und der Template-Struktur dieser Applikation unvermeidlich.<\/p>\n<h2>Anpassungen und Konfiguration<\/h2>\n<p>Am einfachsten ist die Integration, wenn die externe App so konfigurierbar ist, dass sie bei der Integration des WordPress-Headers keinen eigenen Header ausgibt, denn sonst enth\u00e4lt das Ergebnis beispielsweise die <em>html<\/em>-, <em>head<\/em>&#8211; und <em>body<\/em>-Tags doppelt. Erlaubt eine PHP-Anwendung eine solche Konfiguration nicht, ist zwar beispielsweise die WordPress-Funktion <em>get_header()<\/em> nicht verwendbar, einzelne Elemente aus dem Header-Bereich von WordPress lassen sich aber dennoch her\u00fcberziehen. Dazu suchst Du die passenden Code-Zeilen im WordPress-Theme und \u00fcbernimmt diese einfach direkt. Die Funktion <em>wp_nav_menu()<\/em> \u00fcbernimmt beispielsweise die Navigation aus WordPress.<\/p>\n<h2>Grundprinzip testen<\/h2>\n<p>Um das Grundprinzip zu verstehen und die Integration im ersten Schritt zu vereinfachen, legst Du am besten eine leere .php-Datei an, die lediglich HTML-Basics enth\u00e4lt wie die Tags <em>html<\/em>, <em>head<\/em> und <em>body<\/em>. In diese Datei f\u00fcgst Du dann den <em>require<\/em>-Befehl f\u00fcr <em>wp-blog-header.php<\/em> ein sowie die WordPress-Funktionen, die Du nutzen willst. Dazu geh\u00f6ren in der Regel nat\u00fcrlich auch CSS-Anweisungen, die Du ebenfalls direkt aus der <em>header.php<\/em> des WordPress-Themes kopieren und einbinden kannst. Letzteres hat den Vorteil, dass diese CSS-Datei in der Regel bereits im Browser-Cache des Users liegt und nicht neu geladen wird.<\/p>\n<p>Erst wenn das Ergebnis zur Zufriedenheit ist, baust Du diesen funktionierenden Code in die Templates der externen Applikation ein. Dieses schrittweise Vorgehen macht eine Fehlersuche deutlich einfacher.<\/p>\n<p>Grundlegende Code-Beispiele enth\u00e4lt eine <a href=\"http:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/02\/beispiel-code-wordpress-integration1.pdf\">PDF-Datei, die Ihr hier herunterladen k\u00f6nnt<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Statische Webseiten, eine externe Bildergalerie oder eine bestehende Datenbank-Anwendung soll im selben Design erscheinen wie das Blog? Mit einem Trick l\u00e4sst sich WordPress sehr einfach in andere PHP-Apps und Webseiten integrieren.&nbsp;<\/p>\n","protected":false},"author":20,"featured_media":6975,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,490],"tags":[55],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.13 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>WordPress-Look f\u00fcr statische Seiten und externe PHP-Apps<\/title>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"WordPress-Look f\u00fcr statische Seiten und externe PHP-Apps\" \/>\n<meta property=\"og:description\" content=\"Statische Webseiten, eine externe Bildergalerie oder eine bestehende Datenbank-Anwendung soll im selben Design erscheinen wie das Blog? Mit einem Trick l\u00e4sst sich WordPress sehr einfach in andere PHP-Apps und Webseiten integrieren.&nbsp;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wordpress-look-fuer-statische-seiten-und-externe-php-apps\/\" \/>\n<meta property=\"og:site_name\" content=\"STRATO Blog DE Staging\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/strato\" \/>\n<meta property=\"article:published_time\" content=\"2015-02-17T12:58:08+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-12-24T09:12:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/03\/Wordpress_PHP-e1433920327322.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"727\" \/>\n\t<meta property=\"og:image:height\" content=\"409\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"xxxxxxxx\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@STRATO_AG\" \/>\n<meta name=\"twitter:site\" content=\"@STRATO_AG\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"xxxxxxxx\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wordpress-look-fuer-statische-seiten-und-externe-php-apps\/\",\"url\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wordpress-look-fuer-statische-seiten-und-externe-php-apps\/\",\"name\":\"WordPress-Look f\u00fcr statische Seiten und externe PHP-Apps\",\"isPartOf\":{\"@id\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/#website\"},\"datePublished\":\"2015-02-17T12:58:08+00:00\",\"dateModified\":\"2019-12-24T09:12:11+00:00\",\"author\":{\"@id\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/#\/schema\/person\/7787419a54ecb752a02b96a001a49ba1\"},\"breadcrumb\":{\"@id\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wordpress-look-fuer-statische-seiten-und-externe-php-apps\/#breadcrumb\"},\"inLanguage\":\"de-DE\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wordpress-look-fuer-statische-seiten-und-externe-php-apps\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wordpress-look-fuer-statische-seiten-und-externe-php-apps\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"WordPress-Look f\u00fcr statische Seiten und externe PHP-Apps\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/#website\",\"url\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/\",\"name\":\"STRATO Blog DE Staging\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"de-DE\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/#\/schema\/person\/7787419a54ecb752a02b96a001a49ba1\",\"name\":\"xxxxxxxx\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de-DE\",\"@id\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0f9de07c54a148cb53d997fdff0710aa?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0f9de07c54a148cb53d997fdff0710aa?s=96&d=mm&r=g\",\"caption\":\"xxxxxxxx\"},\"description\":\"Ich bin Franz Neumeier, war jahrelang Chefredakteur bei IT-Zeitschriften wie PC Professionell, Internet Professionell und Internet Magazin. Inzwischen habe ich mich als freier Autor vor allem auf Kreuzfahrt-Themen spezialisiert, betreibe mehrere Websites und schreibe aus diesen Praxiserfahrungen heraus weiterhin auch \u00fcber Webhosting- und Webpublishing-Themen.\",\"url\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/author\/xxxxxxxx\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"WordPress-Look f\u00fcr statische Seiten und externe PHP-Apps","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"de_DE","og_type":"article","og_title":"WordPress-Look f\u00fcr statische Seiten und externe PHP-Apps","og_description":"Statische Webseiten, eine externe Bildergalerie oder eine bestehende Datenbank-Anwendung soll im selben Design erscheinen wie das Blog? Mit einem Trick l\u00e4sst sich WordPress sehr einfach in andere PHP-Apps und Webseiten integrieren.&nbsp;","og_url":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wordpress-look-fuer-statische-seiten-und-externe-php-apps\/","og_site_name":"STRATO Blog DE Staging","article_publisher":"https:\/\/www.facebook.com\/strato","article_published_time":"2015-02-17T12:58:08+00:00","article_modified_time":"2019-12-24T09:12:11+00:00","og_image":[{"width":727,"height":409,"url":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/03\/Wordpress_PHP-e1433920327322.jpg","type":"image\/jpeg"}],"author":"xxxxxxxx","twitter_card":"summary_large_image","twitter_creator":"@STRATO_AG","twitter_site":"@STRATO_AG","twitter_misc":{"Verfasst von":"xxxxxxxx","Gesch\u00e4tzte Lesezeit":"3 Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wordpress-look-fuer-statische-seiten-und-externe-php-apps\/","url":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wordpress-look-fuer-statische-seiten-und-externe-php-apps\/","name":"WordPress-Look f\u00fcr statische Seiten und externe PHP-Apps","isPartOf":{"@id":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/#website"},"datePublished":"2015-02-17T12:58:08+00:00","dateModified":"2019-12-24T09:12:11+00:00","author":{"@id":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/#\/schema\/person\/7787419a54ecb752a02b96a001a49ba1"},"breadcrumb":{"@id":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wordpress-look-fuer-statische-seiten-und-externe-php-apps\/#breadcrumb"},"inLanguage":"de-DE","potentialAction":[{"@type":"ReadAction","target":["https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wordpress-look-fuer-statische-seiten-und-externe-php-apps\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wordpress-look-fuer-statische-seiten-und-externe-php-apps\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/"},{"@type":"ListItem","position":2,"name":"WordPress-Look f\u00fcr statische Seiten und externe PHP-Apps"}]},{"@type":"WebSite","@id":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/#website","url":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/","name":"STRATO Blog DE Staging","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"de-DE"},{"@type":"Person","@id":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/#\/schema\/person\/7787419a54ecb752a02b96a001a49ba1","name":"xxxxxxxx","image":{"@type":"ImageObject","inLanguage":"de-DE","@id":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0f9de07c54a148cb53d997fdff0710aa?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0f9de07c54a148cb53d997fdff0710aa?s=96&d=mm&r=g","caption":"xxxxxxxx"},"description":"Ich bin Franz Neumeier, war jahrelang Chefredakteur bei IT-Zeitschriften wie PC Professionell, Internet Professionell und Internet Magazin. Inzwischen habe ich mich als freier Autor vor allem auf Kreuzfahrt-Themen spezialisiert, betreibe mehrere Websites und schreibe aus diesen Praxiserfahrungen heraus weiterhin auch \u00fcber Webhosting- und Webpublishing-Themen.","url":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/author\/xxxxxxxx\/"}]}},"_links":{"self":[{"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/posts\/6974"}],"collection":[{"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/users\/20"}],"replies":[{"embeddable":true,"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/comments?post=6974"}],"version-history":[{"count":1,"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/posts\/6974\/revisions"}],"predecessor-version":[{"id":74745,"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/posts\/6974\/revisions\/74745"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/media\/6975"}],"wp:attachment":[{"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/media?parent=6974"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/categories?post=6974"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/tags?post=6974"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}