{"id":9698,"date":"2016-01-15T14:54:12","date_gmt":"2016-01-15T13:54:12","guid":{"rendered":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/?p=9698"},"modified":"2020-11-13T10:32:09","modified_gmt":"2020-11-13T09:32:09","slug":"dein-eigenes-wordpress-plugin-leicht-gemacht","status":"publish","type":"post","link":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/dein-eigenes-wordpress-plugin-leicht-gemacht\/","title":{"rendered":"Dein eigenes WordPress-Plugin leicht gemacht"},"content":{"rendered":"<p>Selbst als WordPress-User mit geringen PHP-Kenntnissen kannst Du \u00fcberraschend einfach ein eigenes Plugin schreiben. Der Workshop zeigt Dir, wie das geht und welche Vorteile Plugins im Vergleich zu Code-Schnipseln in der <em>functions.php<\/em> des Themes haben.<\/p>\n<p><!--more--><\/p>\n<p>Bestimmt hast Du auch schon nach Tricks gesucht, um einfache Funktionen in WordPress hinzuzuf\u00fcgen, wie beispielsweise Shortcodes, Code-Schnipsel zum Integrieren von Google Analytics oder ein Custom Post Type. Meist findest Du dabei Code-Schnipsel, die Du per Copy-and-Paste in die <em>functions.php<\/em> Deines WordPress-Themes \u00fcbernimmst.<\/p>\n<p>Die <em>functions.php<\/em> zu ver\u00e4ndern, hat aber Nachteile:<\/p>\n<ul>\n<li>\u00c4nderst Du die <em>functions.php<\/em> direkt im Theme, gehen die \u00c4nderungen mit dem n\u00e4chsten Update verloren. Du solltest daf\u00fcr also ohnehin immer <a href=\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/child-themes-individuelles-wordpress-design-ganz-einfach\/\" target=\"_blank\" rel=\"noopener noreferrer\">ein Child-Theme anlegen<\/a>.<\/li>\n<li>Wechselst Du eines Tages Dein Theme, musst Du die \u00c4nderungen in der <em>php<\/em> m\u00fchselig heraussuchen und in das neue Theme \u00fcbertragen.<\/li>\n<li>Je mehr Du in der <em>php<\/em> erg\u00e4nzt, desto un\u00fcbersichtlicher wird die Datei und desto m\u00fchseliger die Fehlersuche.<\/li>\n<\/ul>\n<h2>Die L\u00f6sung: Dein eigenes Plugin<\/h2>\n<p>All diese Probleme vermeidest Du, indem Du die meisten Deiner Anpassungen und Erg\u00e4nzungen stattdessen in ein eigenes WordPress-Plugin packst. Dort verwaltest Du Code-Schnipsel komfortabel. Wenn sich ein Fehler einschleicht, nimmst Du das Plugin kurzfristig offline und musst nicht am Live-System in der <em>functions.php<\/em> auf Fehlersuche gehen. Und auch in ein neues Theme kannst Du ein solches Plugin mitnehmen.<\/p>\n<h2>Ein Plugin erstellen ist sehr einfach<\/h2>\n<p>Ein eigenes Plugin zu programmieren klingt sehr kompliziert, ist es aber nicht. Genau genommen brauchst Du erst einmal nur ein paar Zeilen Text in einer neu anzulegenden PHP-Datei.<\/p>\n<pre class=\"lang:default decode:true\">&lt;?php\n\ndefined( 'ABSPATH' ) or die( 'No script kiddies please!' );\n\n\/* also read https:\/\/codex.wordpress.org\/Writing_a_Plugin *\/\n\n\/*\n\nPlugin Name: Name Deines Plugins\n\nDescription: kurze Beschreibung\n\n*\/\n\n\/* Plugin-Code UNTERhalb dieser Zeile *\/\n\n\/* Plugin-Code OBERhalb dieser Zeile *\/\n<\/pre>\n<p>Speichere diese Datei mit einem beliebigen Dateinamen und der Dateiendung <em>.php<\/em> ab, lege im Plugin-Verzeichnis Deiner WordPress-Installation (<em>\/wp-content\/plugins<\/em>) einen neuen Ordner mit beliebigem Namen an und lade die Datei dort hinein.<\/p>\n<p>Bei einem in WordPress &amp; Co. von <a href=\"https:\/\/www.strato.de\/hosting\/?utm_source=Blogartikel&amp;utm_medium=Blogartikel&amp;utm_campaign=dein-eigenes-wordpress-plugin-leicht-gemacht=textlink&amp;campaign=strato.de\/blog\/Artikel\/dein-eigenes-wordpress-plugin-leicht-gemacht&amp;swtssa=gersc0000000000000000tffc\">STRATO Hosting<\/a>\u00a0installierten WordPress ist das Plugin-Verzeichnis beispielsweise <em>\/wordpress\/wp-content\/plugins\/.<\/em><\/p>\n<figure id=\"attachment_9700\" aria-describedby=\"caption-attachment-9700\" style=\"width: 728px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-9700\" src=\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/ftp-server-plugin.jpg\" alt=\"Dein Plugin geh\u00f6rt in denselben Ordner am Server wie alle anderen WordPress-Plugins auch.\" width=\"728\" height=\"295\" srcset=\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/ftp-server-plugin.jpg 728w, https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/ftp-server-plugin-160x65.jpg 160w, https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/ftp-server-plugin-400x162.jpg 400w\" sizes=\"(max-width: 728px) 100vw, 728px\" \/><figcaption id=\"caption-attachment-9700\" class=\"wp-caption-text\">Dein Plugin geh\u00f6rt in denselben Ordner am Server wie alle anderen WordPress-Plugins auch.<\/figcaption><\/figure>\n<p>Achte darauf, dass der <em>Plugin Name<\/em> einzigartig ist und nicht denselben Namen tr\u00e4gt wie ein anderes Plugin.<\/p>\n<p>Anschlie\u00dfend musst Du noch das eben neu erstellte Plugin in WordPress aktivieren. Jetzt hast Du Dein eigenes WordPress-Plugin, allerdings noch ohne Funktion.<\/p>\n<h2>Eigene Funktionalit\u00e4t hinzuf\u00fcgen<\/h2>\n<p>Von nun an f\u00fcgst Du neue Code-Schnipsel in dieses Plugin ein, statt sie in die <em>functions.php<\/em> Deines Themes zu kopieren. Gegebenenfalls kannst Du nat\u00fcrlich bereits fr\u00fcher eingef\u00fcgten Code aus der <em>functions.php<\/em> hierher umziehen.<\/p>\n<p>Die M\u00f6glichkeiten sind vielf\u00e4ltig, von kurzen Code-Schnipseln mit n\u00fctzlichen Detailfunktionen \u00fcber Shortcodes bis hin zu Custom Post Types \u2013 also alles, was Du sonst auch in der <em>functions.php<\/em> tun kannst.<\/p>\n<p>Um zu demonstrieren, wie Dein Plugin zum Leben erwacht, definieren wir beispielhaft einen neuen Shortcode. Wir m\u00f6chten Google-Landkarten in Postings einbauen und deren Breite und H\u00f6he jeweils individuell definieren. F\u00fcge dazu im Gutenberg-Editor einen Shortcode-Block ein. Der Shortcode dazu soll so aussehen:<\/p>\n<pre class=\"lang:default decode:true \">[map width=\"600\" height=\"400\" src=\"https:\/\/www.google.com\/maps\/embed?...\"]<\/pre>\n<figure id=\"attachment_9701\" aria-describedby=\"caption-attachment-9701\" style=\"width: 728px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-9701\" src=\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/map-shortcode-backend.jpg\" alt=\"\u00dcber den Shortcode definierst Du die Breite, H\u00f6he und Karten-URL \u2026\" width=\"728\" height=\"248\" srcset=\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/map-shortcode-backend.jpg 728w, https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/map-shortcode-backend-160x55.jpg 160w, https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/map-shortcode-backend-400x136.jpg 400w\" sizes=\"(max-width: 728px) 100vw, 728px\" \/><figcaption id=\"caption-attachment-9701\" class=\"wp-caption-text\">\u00dcber den Shortcode definierst Du die Breite, H\u00f6he und Karten-URL \u2026<\/figcaption><\/figure>\n<p>Unser Plugin mit dem dazu geh\u00f6rigen PHP-Code sieht dann so aus:<\/p>\n<pre class=\"lang:default decode:true\">&lt;?php\n\n\/*\n\nPlugin Name: Mein individuelles Plugins\n\nDescription: spezielle Funktionen und Code fuer mein Blog\n\n*\/\n\n\/* Shortcode [map width=\"\" height=\"\" src=\"\"] - Google-Karte einfuegen *\/\n\nfunction MeineGoogleMap($atts) {\n\n       extract(shortcode_atts(array(\n\n                    \"width\" =&gt; '800',\n\n                    \"height\" =&gt; '600',\n\n                    \"src\" =&gt; ''\n\n                    ), $atts));\n\n      return '&lt;iframe width=\"'.$width.'\" height=\"'.$height.'\" frameborder=\"0\" scrolling=\"no\" marginheight=\"0\" marginwidth=\"0\" src=\"'.$src.'\"&gt;&lt;\/iframe&gt;';\n\n}\n\nadd_shortcode(\"map\", \"MeineGoogleMap\");\n\n?&gt;<\/pre>\n<figure id=\"attachment_9702\" aria-describedby=\"caption-attachment-9702\" style=\"width: 728px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-9702\" src=\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/map-shortcode-frontend.jpg\" alt=\"\u2026 die Shortcode-Funktion in Deinem Plugin erledigt den Rest.\" width=\"728\" height=\"434\" srcset=\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/map-shortcode-frontend.jpg 728w, https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/map-shortcode-frontend-160x95.jpg 160w, https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/map-shortcode-frontend-400x238.jpg 400w\" sizes=\"(max-width: 728px) 100vw, 728px\" \/><figcaption id=\"caption-attachment-9702\" class=\"wp-caption-text\">\u2026 die Shortcode-Funktion in Deinem Plugin erledigt den Rest.<\/figcaption><\/figure>\n<p>Die im Shortcode einzuf\u00fcgende URL im Attribut <em>src<\/em> ist \u00fcbrigens diejenige, die Google Maps unter <em>\u201eTeilen\u201c \u2013 \u201eKarte einbetten\u201c<\/em> ausgibt.<\/p>\n<p>Auf die Details des Shortcodes soll hier nicht n\u00e4her eingegangen werden. Es geht in diesem Artikel vor allem darum zu zeigen, wie Code in die Plugin-Datei eingef\u00fcgt wird.<\/p>\n<h2>Welcher Code geh\u00f6rt ins Plugin, welcher nicht?<\/h2>\n<p>Gut aufgehoben ist in Deinem Plugin s\u00e4mtlicher Code, der nichts direkt mit Deinem Theme zu tun hat. Das sind also Funktionen, die auch unabh\u00e4ngig vom Theme n\u00fctzlich sind.<\/p>\n<p>Im Umkehrschluss solltest Du alles, was direkten Einfluss auf das Theme nimmt, auf dessen Funktionen aufbaut oder solche ver\u00e4ndert, in der <em>functions.php<\/em> belassen. Ein typisches Beispiel daf\u00fcr w\u00e4re die Definition zus\u00e4tzlicher Bilder-Gr\u00f6\u00dfen f\u00fcr die Medien-Bibliothek.<\/p>\n<p>Denn: Wechselst Du sp\u00e4ter einmal das Theme, w\u00e4ren diese Code-Teile im Plugin heimatlos und w\u00fcrden WordPress mit unn\u00f6tigem, weil dann nutzlosem Code aufbl\u00e4hen.<\/p>\n<h2>Tipp: Strukturiere Dein Plugin mit Kommentarzeilen<\/h2>\n<p>Gew\u00f6hnlich enth\u00e4lt ein Plugin genau eine Funktionalit\u00e4t. Im Falle Deines individuellen Plugins packst Du aber viele voneinander unabh\u00e4ngige Code-Schnipsel in ein einziges Plugin. Damit Du Dich sp\u00e4ter darin noch zurecht findest, solltest Du Ordnung halten und alles gut dokumentieren \u2013 und zwar am besten au\u00dferhalb des Plugins, um dessen Code nicht aufzubl\u00e4hen.<\/p>\n<figure id=\"attachment_9703\" aria-describedby=\"caption-attachment-9703\" style=\"width: 704px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-9703\" src=\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/plugincode-kommentar.jpg\" alt=\"Im Plugin-Code macht ein kurzer Kommentar einzelne Funktionalit\u00e4ten identifizierbar \u2026\" width=\"704\" height=\"351\" srcset=\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/plugincode-kommentar.jpg 704w, https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/plugincode-kommentar-160x80.jpg 160w, https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/plugincode-kommentar-400x199.jpg 400w\" sizes=\"(max-width: 704px) 100vw, 704px\" \/><figcaption id=\"caption-attachment-9703\" class=\"wp-caption-text\">Im Plugin-Code macht ein kurzer Kommentar einzelne Funktionalit\u00e4ten identifizierbar \u2026<\/figcaption><\/figure>\n<figure id=\"attachment_9704\" aria-describedby=\"caption-attachment-9704\" style=\"width: 728px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-9704\" src=\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/dokumentation.jpg\" alt=\"\u2026 und in einer separaten Datei kannst Du alle Informationen dazu ausf\u00fchrlich dokumentieren.\" width=\"728\" height=\"365\" srcset=\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/dokumentation.jpg 728w, https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/dokumentation-160x80.jpg 160w, https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/dokumentation-400x201.jpg 400w\" sizes=\"(max-width: 728px) 100vw, 728px\" \/><figcaption id=\"caption-attachment-9704\" class=\"wp-caption-text\">\u2026 und in einer separaten Datei kannst Du alle Informationen dazu ausf\u00fchrlich dokumentieren.<\/figcaption><\/figure>\n<p>Gebe innerhalb des Plugins jeder Funktion per PHP-Kommentar <em>\/* kommentar *\/<\/em> einen Namen oder eine Kurzbeschreibung und lege Dir dann separat eine Textdatei an, in die Du Details zur jeweiligen Funktionalit\u00e4t hinterlegst. Besonders wichtig ist dabei die Quelle, aus der Du den Code-Schnipsel bezogen hast. Denn dann kannst Du sp\u00e4ter bei eventuell auftretenden Problemen dort nachsehen und eventuelle Updates finden.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Selbst als WordPress-User mit geringen PHP-Kenntnissen kannst Du \u00fcberraschend einfach ein eigenes Plugin schreiben. Der Workshop zeigt Dir, wie das geht und welche Vorteile Plugins im Vergleich zu Code-Schnipseln in der functions.php des Themes haben.<\/p>\n","protected":false},"author":20,"featured_media":9788,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,490],"tags":[152,55],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.13 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Dein eigenes WordPress-Plugin leicht gemacht<\/title>\n<meta name=\"description\" content=\"Schritt-f\u00fcr-Schritt: So baust Du Dir ganz einfach Dein eigenes WordPress-Plugin und erweiterst WordPress mit individuellen Funktionen.\" \/>\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=\"Dein eigenes WordPress-Plugin leicht gemacht\" \/>\n<meta property=\"og:description\" content=\"Schritt-f\u00fcr-Schritt: So baust Du Dir ganz einfach Dein eigenes WordPress-Plugin und erweiterst WordPress mit individuellen Funktionen.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/dein-eigenes-wordpress-plugin-leicht-gemacht\/\" \/>\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=\"2016-01-15T13:54:12+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-11-13T09:32:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/STRATO-Eigenes-Wordpress-Plugin-728x410-e1613573087751.png\" \/>\n\t<meta property=\"og:image:width\" content=\"364\" \/>\n\t<meta property=\"og:image:height\" content=\"205\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\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=\"5 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\/dein-eigenes-wordpress-plugin-leicht-gemacht\/\",\"url\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/dein-eigenes-wordpress-plugin-leicht-gemacht\/\",\"name\":\"Dein eigenes WordPress-Plugin leicht gemacht\",\"isPartOf\":{\"@id\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/#website\"},\"datePublished\":\"2016-01-15T13:54:12+00:00\",\"dateModified\":\"2020-11-13T09:32:09+00:00\",\"author\":{\"@id\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/#\/schema\/person\/7787419a54ecb752a02b96a001a49ba1\"},\"description\":\"Schritt-f\u00fcr-Schritt: So baust Du Dir ganz einfach Dein eigenes WordPress-Plugin und erweiterst WordPress mit individuellen Funktionen.\",\"breadcrumb\":{\"@id\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/dein-eigenes-wordpress-plugin-leicht-gemacht\/#breadcrumb\"},\"inLanguage\":\"de-DE\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/dein-eigenes-wordpress-plugin-leicht-gemacht\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/dein-eigenes-wordpress-plugin-leicht-gemacht\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dein eigenes WordPress-Plugin leicht gemacht\"}]},{\"@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":"Dein eigenes WordPress-Plugin leicht gemacht","description":"Schritt-f\u00fcr-Schritt: So baust Du Dir ganz einfach Dein eigenes WordPress-Plugin und erweiterst WordPress mit individuellen Funktionen.","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":"Dein eigenes WordPress-Plugin leicht gemacht","og_description":"Schritt-f\u00fcr-Schritt: So baust Du Dir ganz einfach Dein eigenes WordPress-Plugin und erweiterst WordPress mit individuellen Funktionen.","og_url":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/dein-eigenes-wordpress-plugin-leicht-gemacht\/","og_site_name":"STRATO Blog DE Staging","article_publisher":"https:\/\/www.facebook.com\/strato","article_published_time":"2016-01-15T13:54:12+00:00","article_modified_time":"2020-11-13T09:32:09+00:00","og_image":[{"width":364,"height":205,"url":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-content\/uploads\/2015\/12\/STRATO-Eigenes-Wordpress-Plugin-728x410-e1613573087751.png","type":"image\/png"}],"author":"xxxxxxxx","twitter_card":"summary_large_image","twitter_creator":"@STRATO_AG","twitter_site":"@STRATO_AG","twitter_misc":{"Verfasst von":"xxxxxxxx","Gesch\u00e4tzte Lesezeit":"5 Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/dein-eigenes-wordpress-plugin-leicht-gemacht\/","url":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/dein-eigenes-wordpress-plugin-leicht-gemacht\/","name":"Dein eigenes WordPress-Plugin leicht gemacht","isPartOf":{"@id":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/#website"},"datePublished":"2016-01-15T13:54:12+00:00","dateModified":"2020-11-13T09:32:09+00:00","author":{"@id":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/#\/schema\/person\/7787419a54ecb752a02b96a001a49ba1"},"description":"Schritt-f\u00fcr-Schritt: So baust Du Dir ganz einfach Dein eigenes WordPress-Plugin und erweiterst WordPress mit individuellen Funktionen.","breadcrumb":{"@id":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/dein-eigenes-wordpress-plugin-leicht-gemacht\/#breadcrumb"},"inLanguage":"de-DE","potentialAction":[{"@type":"ReadAction","target":["https:\/\/stg.blog-de.strato.wpcust.com\/blog\/dein-eigenes-wordpress-plugin-leicht-gemacht\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/dein-eigenes-wordpress-plugin-leicht-gemacht\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Dein eigenes WordPress-Plugin leicht gemacht"}]},{"@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\/9698"}],"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=9698"}],"version-history":[{"count":12,"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/posts\/9698\/revisions"}],"predecessor-version":[{"id":90230,"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/posts\/9698\/revisions\/90230"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/media\/9788"}],"wp:attachment":[{"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/media?parent=9698"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/categories?post=9698"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/stg.blog-de.strato.wpcust.com\/blog\/wp-json\/wp\/v2\/tags?post=9698"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}