All Articles

WordPress を Markdown 書式で更新する(2): Weblogger Mode

WordPress を Markdown 書式で更新する (1) で Markdown 書式を HTML にできたので、それを WordPress (以前使っていた blog システム) に投稿する手順を調べてみた。

Weblogger Mode のインストールと設定

まずは、プログラムから投稿するために WordPress の XML-RPC インターフェイスを有効にする。 WordPress なので設定メニューをクリックするだけで OK。 これは org2blog を試したときにやってあったので、今回は省略。

Emacs から WordPress への投稿についてググってみたところ、Weblogger Mode を使えばいいらしいので、インストールして設定。

上記ページを参考に、weblogger.el をダウンロードして site-lisp ディレクトリに放り込む。

;; weblogger
(require 'weblogger)
(global-set-key (kbd "C-c b") 'weblogger-start-entry)

M-x weblogger-setup-weblog RET を実行すると、設定が必要な項目を順番に聞かれるので入力していく。

これで Weblogger Mode の設定は終了。

記事の投稿

M-x weblogger-start-entry RET で投稿エントリを作成開始。 次のような感じで、記事のヘッダを入力したバッファが表示される。

Subject: blog 記事のタイトルを入力
Keywords: 記事のタグを入力? (試してない)
Date: 日付文字列
From: 投稿者
Newsgroup: 投稿する blog 名称
--text follows this line--

Subject:Keywords: 以外はデフォルト値が入っているので、だいたいは Subject: だけ入力している。 どうも Date: フィールドでタイムゾーンがうまく扱われていないらしく、投稿後に確認すると9時間ずれている。 ググってみると +0900 をつけたらうまくいったという記述も見かけたんだけど… とりあえず、投稿の日付は編集したいことが多いので気にしないという方針で。

本文は Markdown から生成した HTML を C-x i で読み込む。 そのままだと HTML ヘッダも含まれてしまっているので、 <body>〜</body> の中身だけ残して削除。 このへんもちょっと elisp を書いたら対応できそうではあるけど、記事の HTML をいちおう確認して投稿したいので手動対応で。書くの面倒だし(ぉぃ)。

いくつか記事を作って試してみて、下記のルールで書けばそのまま張り込めそうということがわかった。

  • 見出しは ### (h3) 以下のレベルを使い、必ずなにかのタグ [tag] をつける
  • コードブロックは [コード]〜[/コード] で囲む

    • あまりスマートじゃないけど、SyntaxHighlighter で使う [コード] は HTML タグじゃないからしょうがない…

ちょっと手作業が入るけどブラウザの入力窓で書くのと比べたら断然楽だし、手元に元ファイルが残るので、しばらくこの手でいくことに決めた。 最近の数エントリは実際に上記の手順で更新してます。 (注: 以前使っていた blog システムの話です…)