C# und die WordPress APIs

In den letzten Tagen war es sehr ruhig in meinem Blog. Ich war nicht nur ruhig sondern habe die Zeit auch genutzt um etwas zu beginnen, was ich schon lange vorhatte zu tun.

Ich schreibe an einer C#-Bibliothek mit der man auf WordPress zugreifen kann. WordPress hat für solche Zwecke mehrere APIs implementiert, die blogger-API, MovableType-API und die MetaWeblog-API (vgl. WordPress Datei: xmlrpc.php). Diese APIs sind über XML-RPC (Extensible Markup Language – Remote Procedure Call) zu erreichen und damit sollte die Arbeit relativ einfach sein.

XML-RPC ist im Grunde nur ein XML-Datenaustausch der über HTTP abgewickelt wird. Für .NET gibt es bereits eine XML-RPC Implementierung von Charles Cook. Diese Implementierung steht unter der MIT-Lizenz, ist damit Open Source und frei nutzbar.

Damit musste ich nur noch ein Interface schreiben, die Funktionen hinzufügen und die entsprechenden Structs anlegen. Das Grundgerüst der C# Library steht bereits, alle Funktionen sind jedoch noch nicht ausprogrammiert.

Was bereits funktioniert ist:

  • das Abholen der Kategorien („metaWeblog.getCategories“),
  • der letzten Einträge („blogger.getRecentPosts“),
  • das Abholen einzelner Posts („metaWeblog.getPost“),
  • das Einstellen neuer Posts („metaWeblog.newPost“).

Ein Beispiel für einen die Funktion „metaWeblog.newPost“ ist der Artikel „Test Test„, den habe ich direkt aus meiner Konsolenanwendung gepostet. 🙂

Nach und nach werde ich alle anderen Funktionen implementieren. Besonders spannend wird dabei wohl der Dateiupload, der auch über XML-RPC möglich ist. Dazu werde ich noch eine Funktion schreiben müssen die einen FileStream Base64 enkodiert. Alles andere ist reine Fleißarbeit.

Share this content: