はてなブログにカスタムURL付きで新規投稿する

先だっての記事はてなブログからの記事リスト取得と記事編集ができるようになった。

ところが記事の編集のたびにファイル名が変わってしまう(おそらくURLも変わっている)謎の現象が起きた。

また、ディレクトリ構成が日付ごとの上にmark-downのファイル名が[数字].mdとなって管理しづらくもあった。いったんドラフトを入れてから編集というフローも煩雑であった。

これらの問題がカスタムURLを指定することで解消できそうであったため、指定する方式に改めることにした。

やりたいこと

  • 独自のディレクトリ構成とファイル名を使いたい
    • こうすると編集のたびにURLが変わる問題も解消されるはず
  • ドラフトを通さずに投稿したい

どう実現するか?

カスタムURLを指定しつつ投稿できるようにする。カスタムURLの指定は公式ドキュメントに記載がないのだが、こちらのブログの通り、投稿の際のXMLに混ぜこむことで指定できる。

投稿用のスクリプトを改修し、Markdownに記載しているフロントマターからカスタムURLを生成すれば、やりたいことは実行できそうである。

スクリプトの作成

以下のようになった(リンク先参照)。

pythonスクリプト

GitHubのコード

テンプレート

GitHubのコード

結果

おおむね問題なさそうである。パスの指定がやや面倒くさいという問題があるが、許容範囲内だろう。