これまで、Pythonを使ってMarkdown記事をWordPressへ下書き投稿するツールを紹介してきました。
今回はその続きとして、Codexを使ってWordPress投稿ツールを作る方法について紹介します。

人間はコードを一切書かないで、ChatGPTでCodexへの依頼内容を整理し、その内容をCodexに渡して実装しました。
実際に、約1時間でWordPressへ下書き投稿できるツールを作成できました。

作ったツール

今回作ったのは、Markdown記事をWordPressへ下書き投稿するPythonツールです。
Markdownからタイトル、スラッグ、カテゴリ、タグ、本文を読み取り、WordPress REST APIで下書き投稿します。
同じスラッグの記事がある場合は、新規投稿ではなく既存記事を更新する仕様です。
投稿に成功したMarkdownファイルは、doneフォルダへ移動します。

コード、README、AGENTS.md、PLANS.mdは次のGitHubで公開しています。
https://github.com/ojichiku/public-python-samples/tree/main/samples/wordpress-draft-publisher-codex

ChatGPTでCodexへの依頼内容を作る

最初に、ChatGPTでCodexへの依頼内容を整理しました。
いきなり「WordPress投稿ツールを作って」と頼むのではなく、必要な要件をまとめてからCodexに渡しました。

要件には、Markdown本文の変換、WordPress REST APIでの下書き投稿、同じスラッグの記事がある場合の更新、投稿後のファイル移動などを入れました。
この内容をrequirements.mdとして保存し、Codexに渡しています。

requirements.mdの詳細は次のGitHubに書いています。
https://github.com/ojichiku/public-python-samples/blob/main/samples/wordpress-draft-publisher-codex/docs/requirements.md

Codexではステップごとに確認する

Codexには、いきなり完成版のコードを書かせませんでした。
まずrequirements.mdを渡し、AGENTS.mdとPLANS.mdを作ってもらいました。

AGENTS.mdは作業ルールです。
PLANS.mdは実装計画です。
先にこの2つを作ることで、Codexが何を作ろうとしているのか確認しやすくなりました。

その後は、次の流れで進めました。

  • 要件を確認する
  • AGENTS.mdとPLANS.mdを作る
  • Pythonコードを作る
  • サンプルMarkdownで変換を確認する
  • WordPressへ下書き投稿する
  • 動かして分かった問題を修正する

一気に丸投げするのではなく、作ったものを確認しながら進めました。
このやり方にしたことで、自分でコーディングしなくても、約1時間でWordPressへ下書き投稿できるところまで進められました。

実際にWordPressへ下書き投稿できた

作成したツールを使って、実際にWordPressへ下書き投稿しました。
投稿テストは成功し、Markdownで書いた記事をWordPressの下書きとして登録できました。

ただし、最初からすべて想定通りだったわけではありません。
同じMarkdownファイルを戻して再実行したとき、既存記事の更新ではなく新規投稿になりました。

そこでCodexに修正を依頼し、スラッグ検索で下書き投稿も対象にするように直しています。
新規投稿の場合、ツールを実行した場合は次のように表示されます。

uv run python post_to_wordpress.py
処理開始: sample_post.md
WordPressへの投稿に成功しました
投稿ID: 2199
ステータス: draft
編集URL: https://xxxxxx/post.php?post=2199&action=edit
移動先: public-python-samples/samples/wordpress-draft-publisher-codex/done/sample_post.md

既存記事の更新がある場合、ツールを実行すると次のように表示されます。

uv run python post_to_wordpress.py
処理開始: sample_post.md
WordPressへの更新に成功しました
投稿ID: 2199
ステータス: draft
編集URL: https://xxxxx/post.php?post=2199&action=edit
移動先: public-python-samples/samples/wordpress-draft-publisher-codex/done/sample_post.md

サンプルの記事は次のように投稿されます。

コードと要件はGitHubで公開しています

今回作成したコードは次のGitHubで公開しています。
https://github.com/ojichiku/public-python-samples/blob/main/samples/wordpress-draft-publisher-codex/post_to_wordpress.py

今回作ったツールの詳細は次のREADMEで紹介しています。
https://github.com/ojichiku/public-python-samples/blob/main/samples/wordpress-draft-publisher-codex/README.md

まとめ

今回は、ChatGPTでCodexへの依頼内容を整理し、CodexでWordPress下書き投稿ツールを作りました。
自分ではコーディングせず、約1時間で実際にWordPressへ下書き投稿できるところまで進められました。

大事なのは、Codexに一気に完成版を作らせないことです。
まず要件を渡し、AGENTS.mdとPLANS.mdで作業の方向を決め、作ったものを確認しながら進める方がよいです。

この「作る、確認する、直す」の流れを取れば、小さな実用ツールはかなり早く作れると思います。