{"id":186,"date":"2014-05-22T14:35:42","date_gmt":"2014-05-22T12:35:42","guid":{"rendered":"http:\/\/www.zellot.at\/blogs\/?p=186"},"modified":"2014-05-22T14:37:10","modified_gmt":"2014-05-22T12:37:10","slug":"wordpress-xmlrpc-call-beispiel-xml","status":"publish","type":"post","link":"https:\/\/www.zellot.at\/blogs\/2014\/05\/22\/wordpress-xmlrpc-call-beispiel-xml\/","title":{"rendered":"WordPress xmlrpc call Beispiel XML"},"content":{"rendered":"<p>Nachdem ich jetzt relativ lange nach einen Beispiel XML Code f\u00fcr das Erstellen eines Blogeintrages auf einer WordPress Instanz gesucht habe hier ein Bsp XML. Leider nur metaWeblog.newPost und nicht wp.newPost, die Hilfeseiten auf der WordPress.org Seite lassen leider sehr zu w\u00fcnschen \u00fcbrig. Es ist nicht ersichtlich wie das XML aussehen soll meiner Meinung nach,<\/p>\n<p><pre><code class=\"preserve-code-formatting\">\n&lt;?xml version=&quot;1.0&quot;?&gt;\n&lt;methodCall&gt;\n&lt;methodName&gt;metaWeblog.newPost&lt;\/methodName&gt;\n&lt;params&gt;\n&lt;param&gt;&lt;value&gt;&lt;int&gt;1&lt;\/int&gt;&lt;\/value&gt;&lt;\/param&gt;\n&lt;param&gt;&lt;value&gt;&lt;string&gt;admin&lt;\/string&gt;&lt;\/value&gt;&lt;\/param&gt;\n&lt;param&gt;&lt;value&gt;&lt;string&gt;password&lt;\/string&gt;&lt;\/value&gt;&lt;\/param&gt;\n&lt;param&gt;&lt;value&gt;&lt;struct&gt;\n&nbsp;&nbsp;&lt;member&gt;&lt;name&gt;title&lt;\/name&gt;&lt;value&gt;&lt;string&gt;Beitragstitle&lt;\/string&gt;&lt;\/value&gt;&lt;\/member&gt;\n&nbsp;&nbsp;&lt;member&gt;&lt;name&gt;categories&lt;\/name&gt;&lt;value&gt;&lt;array&gt;&lt;data&gt;\n&nbsp;&nbsp;&lt;value&gt;&lt;string&gt;Kategorie 1&lt;\/string&gt;&lt;\/value&gt;\n&nbsp;&nbsp;&lt;value&gt;&lt;string&gt;Kategorie 2&lt;\/string&gt;&lt;\/value&gt;\n&lt;\/data&gt;&lt;\/array&gt;&lt;\/value&gt;&lt;\/member&gt;\n&nbsp;&nbsp;&lt;member&gt;&lt;name&gt;mt_keywords&lt;\/name&gt;&lt;value&gt;&lt;string&gt;tag1, tag2, tag3&lt;\/string&gt;&lt;\/value&gt;&lt;\/member&gt;\n&nbsp;&nbsp;&lt;member&gt;&lt;name&gt;content&lt;\/name&gt;&lt;value&gt;&lt;string&gt;Hier k\u00f6nnte Inhalt stehen&lt;\/string&gt;&lt;\/value&gt;&lt;\/member&gt;\n&lt;\/struct&gt;&lt;\/value&gt;&lt;\/param&gt;\n&lt;param&gt;&lt;value&gt;&lt;boolean&gt;1&lt;\/boolean&gt;&lt;\/value&gt;&lt;\/param&gt;\n&lt;\/params&gt;&lt;\/methodCall&gt;\n \n<\/code><\/pre><br \/>\nHier das Script f\u00fcr das Erzeugen des XML, mit der Klasse die im WordPress Ordner liegt.<br \/>\n<pre><code class=\"preserve-code-formatting\">\n&lt;!--?php require_once(&quot;..\/wp-includes\/class-IXR.php&quot;); \n$rpc = new IXR_Client(&#039;http:\/\/localhost\/wordpress\/xmlrpc.php&#039;); \n$post = array(); \/\/ das Post construct: \/\/ Metadaten \n$post[&#039;title&#039;]&nbsp;&nbsp;&nbsp;&nbsp; = &#039;Beitragstitle&#039;; \n$post[&#039;categories&#039;]&nbsp;&nbsp; = array(&#039;Kategorie 1&#039;, &#039;Kategorie 2&#039;); \n$post[&#039;mt_keywords&#039;]&nbsp;&nbsp; = &#039;tag1, tag2, tag3&#039;; \/\/ Posttext \n$post[&#039;content&#039;]&nbsp;&nbsp; = &#039;Hier k\u00f6nnte Inhalt stehen&#039;; \n\nprint_r($rpc---&gt;getXml(&#039;metaWeblog.newPost&#039;, \/\/ Methode\n1, \/\/ Blog ID, in der Regel 1\n&#039;username&#039;, \/\/ Benutzer\n&#039;password&#039;, \/\/ Passwort\n$post, \/\/ Post construct\ntrue \/\/ Ver\u00f6ffentlichen?\n));\n\necho &quot;\\n \\n send to server \\n&quot;;\n$status = $rpc-&amp;gt;query(&#039;metaWeblog.newPost&#039;, \/\/ Methode\n1, \/\/ Blog ID, in der Regel 1\n&#039;username&#039;, \/\/ Benutzer\n&#039;password&#039;, \/\/ Passwort\n$post, \/\/ Post construct\ntrue \/\/ Ver\u00f6ffentlichen?\n);\n\n\/\/ Ergebnis \u00fcberpr\u00fcfen und ggf. eine Fehlermeldung ausgeben\nif(!$status) {\necho &#039;Error (&#039;.$rpc-&amp;gt;getErrorCode().&#039;): &#039;.$rpc-&amp;gt;getErrorMessage();\necho &quot; \\n&quot;;\nexit;\n}\n\n\/\/ Sonst: ID des neuen Posts ausgeben\necho &#039;New Post ID: &#039;.$rpc-&amp;gt;getResponse();\necho &quot; \\n&quot;;\n\n<\/code><\/pre><\/p>\n<p><a href=\"http:\/\/felixtriller.de\/2009\/12\/22\/wordpress-mit-php-und-xml-rpc-bloggen\/\" title=\"http:\/\/felixtriller.de\/2009\/12\/22\/wordpress-mit-php-und-xml-rpc-bloggen\/\" target=\"_blank\">http:\/\/felixtriller.de\/2009\/12\/22\/wordpress-mit-php-und-xml-rpc-bloggen\/<\/a>. Code wurde hier entnommen und die Klasse wurde um 1e Methode erweitert.<\/p>\n<p><pre><code class=\"preserve-code-formatting\">\n\n&nbsp;&nbsp;&nbsp;&nbsp;function getXml($args){\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$args = func_get_args();\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$method = array_shift($args);\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$request = new IXR_Request($method, $args);\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return $request-&gt;getXml();\n&nbsp;&nbsp;&nbsp;&nbsp;}\n<\/code><\/pre><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nachdem ich jetzt relativ lange nach einen Beispiel XML Code f\u00fcr das Erstellen eines Blogeintrages auf einer WordPress Instanz gesucht habe hier ein Bsp XML. Leider nur metaWeblog.newPost und nicht wp.newPost, die Hilfeseiten auf der WordPress.org Seite lassen leider sehr zu w\u00fcnschen \u00fcbrig. Es ist nicht ersichtlich wie das XML aussehen soll meiner Meinung nach, [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,59],"tags":[64,63,62,65,60,61],"class_list":["post-186","post","type-post","status-publish","format-standard","hentry","category-php","category-wordpress","tag-beispiel-xml","tag-php-2","tag-wordpress-2","tag-wordpress-doku","tag-xml","tag-xmlrpc"],"_links":{"self":[{"href":"https:\/\/www.zellot.at\/blogs\/wp-json\/wp\/v2\/posts\/186","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.zellot.at\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.zellot.at\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.zellot.at\/blogs\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.zellot.at\/blogs\/wp-json\/wp\/v2\/comments?post=186"}],"version-history":[{"count":3,"href":"https:\/\/www.zellot.at\/blogs\/wp-json\/wp\/v2\/posts\/186\/revisions"}],"predecessor-version":[{"id":189,"href":"https:\/\/www.zellot.at\/blogs\/wp-json\/wp\/v2\/posts\/186\/revisions\/189"}],"wp:attachment":[{"href":"https:\/\/www.zellot.at\/blogs\/wp-json\/wp\/v2\/media?parent=186"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.zellot.at\/blogs\/wp-json\/wp\/v2\/categories?post=186"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.zellot.at\/blogs\/wp-json\/wp\/v2\/tags?post=186"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}