Dokumentation für wpcmd

Für die Version 0.05

Inhaltsverzeichnis

Was ist wpcmd

Wpcmd ist ein Kommandozeilen-Client für WordPress-Blogs. Das Programm ist in Python geschrieben und sollte unter jedem Betriebssystem arbeiten, für welches ein Python-Interpreter verfügbar ist.

Wpcmd ist freie Software, lizenziert unter den Bedingungen der GNU General Public License in der Version 2 oder in jeder späteren Version, die ihnen gefällt.

Die wichtigste Funktion dieses Programmes ist es, einen Text an ein WordPress-Blog zu senden, um diesen Text zu posten. Dies ermöglicht es ihnen, die Posts in ihrem Lieblingseditor zu verfassen und mit einem einfachen Befehl zu veröffentlichen. Wenn ihr Editor makrofähig ist, können sie oft sogar direkt aus dem Editor heraus bloggen.

Für Menschen, die mit dem WYSIWYG-Editor in WordPress zufrieden sind, mag dies überflüssig wirken. Wer aber lieber mit vertrauter Software als mit dem doch oft etwas schwerfälligen WordPress-Backend arbeitet, wird wpcmd sehr nützlich finden. Das gleiche gilt für jeden WordPress-Anwender, der gewisse Blogging-Aufgaben mit einem Skript automatisieren möchte, und zwar vor allem dann, wenn sich diese Aufgaben nur schwerlich über ein WordPress-Plugin realisieren lassen.

Menschen, die nur eine schmalbandige Verbindung zum Internet haben und alljene, denen für ihre Verbindungsdauer Kosten entstehen und die deshalb lieber offline schreiben, sind ebenfalls mögliche Nutznießer des Bloggens über wpcmd.

Desweiteren ist es mit wpcmd möglich, in andere Programme Blogging-Funktionen einzubauen, wenn diese externe Programme in ihren Makros aufrufen können.

Wpcmd ist also nicht nur ein Programm für »normale« Blogger, sondern auch ein Hilfsmittel für so genannte »Power-User«. Deshalb unterstützt wpcmd selbstverständlich auch die Konfiguration und Verwendung beliebig vieler Blogs.

Voraussetzungen

Wpcmd verwendet eine relativ aktuelle Version der XMLRPC-API von WordPress und arbeitet nur mit relativ modernen WordPress-Versionen. Mit der zurzeit aktuellen Version 3.23 und mit der Version bei wordpress.com gibt es keine Probleme.

Es wird auch eine aktuelle Version des Python-Interpreters benötigt, da wpcmd Gebrauch von einigen neueren Features in Python macht. Ich habe meinen Code nur mit Python 2.7.3 getestet. Er sollte mit jeder Version ab 2.6 laufen. Die Benutzung mit Python-Versionen ab 3.0 erfordert allerdings einige Anpassungen. Da die großen Linux-Distributionen immer noch Python 2.7 als Standard verwenden, habe ich diese Anpassungen nicht vorgenommen.

Installation

Für Unix-artige Betriebssysteme kann das Makefile verwendet werden. Ein Aufruf von make, gefolgt von einem Aufruf make install mit root-Rechten installiert wpcmd nach /usr/local.

Für andere Betriebssysteme kann ich keine Anleitung zur Installation geben. Bitte lesen sie ihre systemspezifische Python-Dokumentation, um Näheres zu erfahren. In der gegenwärtigen Version sollte wpcmd auf MacOS, Windows und unixoiden System ohne Anpassung lauffähig sein.

Blogkonfiguration

Bevor sie ihre Blogbeiträge mit wpcmd verfassen, müssen sie ihre Blogs konfigurieren. Hierzu geben Sie an der Kommandozeile den folgenden Befehl ein:

      $ wpcmd -A
    

(Das $ repräsentiert ihren Shellprompt, dies gilt auch für weitere Beschreibungen in diesem Dokument.)

Sie werden nun interaktiv nach einem Namen für ihr Blog, ihren Zugangsdaten, der URL des Blogs und nach einem Kommentar für diese Blogkonfiguration gefragt. Wenn ihr Blog mit dem Begriff Beispiel identifiziert werden soll und unter der URL blog.example.com verfügbar ist, kann dies etwa so aussehen:

      Name of the blog: Beispiel
      Username: testloginname
      Password: testpassword
      Blog URL: blog.example.com
      Comment: Ein paar Worte zu diesem Blog
    

Hinweis: Verwenden sie im Blognamen keine Leerzeichen. Nehmen sie einen kurzen, leicht zu erinnernden Namen, den sie gut zuordnen können

Nachdem sie ihre Eingaben abgeschlossen haben, wird wpcmd versuchen, alle weiteren benötigten Informationen von ihrer WordPress-Installation zu erfragen. Wenn dies scheitert, befindet sich in der Regel ein Veritpper in den angegebenen Daten. Im Erfolgsfall können Sie anschließend ihr neu konfiguriertes Blog mit wpcmd benutzen.

(Alle weiteren Beispiele werden sich auf dieses Beispiel beziehen. Sie werden aber natürlich ihre eigene Konfiguration verwenden.)

Passwort ändern

Natürlich werden Sie von Zeit zu Zeit ihr WordPress-Passwort ändern. Nach einer Änderung des Passwortes in WordPress muss auch wpcmd das neue Passwort erfahren, um weiterhin funktionieren zu können. Um das neue Passwort in wpcmd zu setzen, geben sie Folgendes ein:

      $ wpcmd -P Beispiel
    

Sie werden nach dem neuen Passwort gefragt, und wenn sich wpcmd mit diesem Passwort einloggen kann, wird das neue Passwort für die zukünftige Benutzung durch wpcmd gespeichert.

Grundlegende Benutzung

Um einen neuen Post zu verfassen, benutzen Sie einfach ihren Lieblingseditor. Die Datei, die sie für einen neuen Post erstellen, erklärt sich beinahe von selbst:

      !!blog: Beispiel
      !!type: post
      !!categories: Test, XMLRPC, Wpcmd
      !!tags: Beispiel, Technisches
      !!title: Mein erster Post mit wpcmd

      Dies ist der Text, der in meinem Post erscheinen soll. Er kann
      einfach in einem Editor erstellt werden.

      Absätze werden durch eine Leerzeile markiert. Für normales
      Schreiben sind keine HTML-Tags erforderlich, aber wenn es einmal
      benötigt wird, <em>kann</em> natürlich auch etwas
      HTML im Text verwendet werden.

      Genug davon.
    

Die Zeilen, die mit der Zeichenfolge !! beginnen, richten sich an wpcmd. Sie dienen zur Auszeichnung des Posts. Sie können an beliebiger Stelle in der Datei angegeben werden und sogar mit dem Text vermischt werden, aber ich bevorzuge es, wenn sie oben stehen.

An die Reihenfolge dieser Einstellungen werden übrigens keine besonderen Anforderungen gestellt, aber die erste derartige Zeile muss die Angabe des Blogs mit !!blog: enthalten, sonst wird wpcmd mit einem Fehler aussteigen.

Wenn sie diese Datei etwa als beispiel.txt speichern, denn können sie ihren Post mit dem folgenden Aufruf in ihrem Blog publizieren:

      $ wpcmd beispiel.txt
    

Dass sich auf diese Weise Blogging-Aufgaben leicht mit einem Skript automatisieren lassen, wird vielleicht ihren Wünschen entgegenkommen. Übrigens können sie als Dateinamen auch ein einfaches Minuszeichen (-) verwenden, und wpcmd liest den Text aus der Standardeingabe. Auf diese Weise kann sogar in eine Pipe gebloggt werden.

Vorlagen

Natürlich ist es lästig, die !!-Zeilen immer wieder zu tippen. Wpcmd kann auch Vorlagen erstellen. Wenn sie das folgende Kommando eingeben...

      $ wpcmd -T Beispiel
    

...erstellt wpcmd eine Datei namens Beispiel-Post.txt, die bereits die entsprechenden Zeilen enthält. Die Kategorien sind vorbelegt und es brauchen nur noch die nicht benötigten Kategorien gelöscht zu werden.

Diese Dateien eigenen sich auch gut für den Vorlagen-Ordner ihres bevorzugten Desktops, um schnell und einfach Post-Dateien anlegen zu können.

Übrigens interpretiert die Option -T auch einen Asterisk (*) als Jokerzeichen für beliebige Zeichenfolgen, damit mehrere Vorlagen auf einmal erstellt werden können. Sie können sogar mit wpcmd -T "*" eine Vorlage für alle ihre konfigurierten Blogs erzeugen lassen, was oft recht nützlich ist.

Zeichencodierung

Wenn sie eine Templatedatei erzeugt haben, fällt ihnen vielleicht die folgende Zeile zum Anfang der Datei auf:

      # -*- coding: utf-8 -*- 
    

Diese Zeile gibt an, in welcher Zeichencodierung ihre Datei verfasst ist. Die Umwandlung — falls sie erforderlich ist — erledigt wpcmd vor dem Publizieren automatisch. So können sie ihre Texte auch auf Systemen mit anderen Zeichencodierungen verfassen, wenn sie die Codierung angeben.

Ach ja: Jede Zeile, die mit einem #-Zeichen beginnt, wird von wpcmd als Kommentar betrachtet und ignoriert. Vielleicht mögen sie das, wenn sie ihre Arbeit so organisieren, dass sie während des Schreibens im Editor rohe Notizen machen. Wenn sie allerdings eine Zeile mit einem # beginnen lassen möchten – dies ist manchmal wünschenswert, wenn sie Quelltexte veröffentlichen – denn müssen sie diese Zeile mit ## beginnen.

Bilder und Dateien

Häufig sollen Bilder und andere Dateien in einen Post eingebettet werden und müssen hierfür hochgeladen werden. Wpcmd ermöglicht dies mit einem Minimum zusätzlicher Syntax, hierfür ist es allerdings erforderlich, dass sie ein wenig HTML in ihre Posts einbauen.

Wenn sie einen Link <a href ...> mit einer lokal gespeicherten Datei als Ziel oder ein Bild <img src ...> mit einem lokal gespeicherten Bild als Quelle einbetten, denn wird wpcmd diese Dateien hochladen und die Pfade vor dem Publizieren anpassen.

Hier sagt ein Beispiel mehr als tausend Worte.

      !!blog: Beispiel
      !!type: post
      !!categories: Test, Upload
      !!tags: Upload, Technisches
      !!title: Uploads mit wpcmd
      
      Weitere Informationen <a href="beispiel.pdf">stehen als
      PDF-Datei zur Verfügung</a>.

      <img src="beispiel.jpg" />
    

Wenn sie diesen Post publizieren, wird wpcmd überprüfen, ob diese beiden Dateien im Arbeitsverzeichnis vorhanden sind. Wenn dies nicht der Fall ist, gibt es eine Fehlermeldung, da ein unvollständiges Posting zumeist unerwünscht ist. Sind die Dateien aber vorhanden, so werden sie vor der Veröffentlichung des Posts hochgeladen und die Pfade in ihrem Post werden entsprechend angepasst.

Für die Angabe der Dateien können sie beliebige absolute oder relative Pfade verwenden.

Wenn sie einen vollständigen Link mit angegebenem Protokoll verwenden, wird dieser unverändert übernommen.

In mehreren Blogs posten

Es ist möglich, beliebig viele Blogs in wpcmd zu konfigurieren, und manchmal wird der Wunsch aufkommen, ein Posting an mehrere konfigurierte Blogs zu senden. Das ist relativ einfach, denn sie können auch beliebig viele Blogs in einer Datei angeben. Alle Informationen, die nach der Angabe von !!blog stehen, beziehen sich auf die angegebene Konfiguration.

Wenn sie neben Beispiel auch ein weiteres Blog Beispiel2 konfiguriert haben, denn könnten sie zum Beispiel den folgenden Post verfassen und absenden.

      !!blog: Beispiel
      !!type: post
      !!categories: Test
      !!tags: Doppelpost, Technisches
      !!title: Beispiel für ein Doppelpost
      !!blog: Beispiel2
      !!type: post
      !!categories: Backup
      !!tags: Sinnloses
      !!title: Sinnloses Doppelposting

      Dieses Posting erscheint in zwei verschiedenen Blogs.
    

Auf diesem Hintergrund können sie vermutlich auch besser verstehen, warum die Angabe !!blog immer an erster Stelle stehen muss. Sie definiert den Kontext für die folgenden Angaben.

Wpcmd-Shell

Wenn sie wpcmd ohne Paramter aufrufen, gelangen sie in einen interaktiven Interpreter, der ihnen eine Kommandozeile präsentiert. Dieser Interpreter ermöglicht ihnen viele administrative Tätigkeiten an wpcmd und an den konfigurierten Blogs.

Dieses Feature ist im Moment noch nicht völlig ausgereift. Es wird daher auch noch nicht dokumentiert. In späteren Versionen werden hier weiter gehende Möglichkeiten der Blogadministration implementiert, insbesondere die Administration der Kommentare.

Das sollte sie jedoch nicht davon abhalten, diese Schnittstelle ein wenig auszuprobieren. Sie können hier auch Änderungen an der wpcmd-Konfiguration vornehmen, die über einen direkten Aufruf nicht möglich sind. Die wpcmd-Shell verfügt über ein integriertes Hilfesystem in englischer Sprache. Für alles Weitere tippen sie einfach help.

Weitere Informationen

Eine vollständige Dokumentation der möglichen Optionen beim Aufruf von wpcmd finden sie in der manpage von wpcmd, die sie mit man wpcmd anzeigen können.

Copyright

Copyright ©2009-2012 wpcmd Elias Schwerdtfeger, www.tamagothi.de

Wpcmd ist freie Software, lizenziert unter den Bedingungen der zweiten Version der GNU General Public License oder jeder späteren Version, die sie wünschen. Es gibt keinerlei Garantie für dieses Programm. Lesen sie den Lizenztext für weitere Informationen. Sie haben ihn zusammen mit ihrem Download erhalten, es handelt sich um die Datei namens COPYING.

Unterstützung

Wenn ihnen wpcmd gefällt und sie mich unterstützen und die Weiterentwicklung des Programmes fördern wollen, können sie mir gern auf meiner Homepage eine kleine Spende über PayPal zukommen lassen.

Ich bin ein obdachloser Künstler, der vom Betteln lebt und alle seine Werke frei zur Verfügung stellt, weil er hofft, dass dafür auch etwas zurückkommt. Es klingt vielleicht etwas naiv, aber ich kann nicht mehr anders leben.

Und wenn sie meine Homepage besuchen, bedienen sie sich bitte bei allem, was ich dort frei zur Verfügung stelle. Dafür ist es da.