※本記事はプロモーションを含みます
ブログ運営は、記事を書く時間よりも「WordPressに貼り付けて、整えて、設定して」という周辺作業に時間を取られがちです。Claude CodeとWordPressのREST APIを連携させると、執筆から下書き投稿・投稿前チェックまでを自動化し、人間の作業を「レビューと公開判断」だけに絞れます。
筆者はこのブログ自体をその仕組みで運用しており、この記事も同じパイプラインから投稿されています。実際に構築してみて動いた手順と、途中でつまずいた点を実体験ベースで解説します。
先に押さえておきたい3つのポイント
- WordPressへの接続は「アプリケーションパスワード」を使います。本体のログインパスワードをスクリプトに書く必要はなく、権限の取り消しも簡単です。
- 自動投稿は必ず下書き(draft)固定にします。公開判断まで自動化すると、事実誤認やAI特有の誤りがそのまま世に出るリスクがあります。
- 手順や品質ルールをファイル(CLAUDE.md等)に書いて残すと、毎回同じ品質で再現でき、指示のやり直しがなくなります。
前提・必要なもの
| 項目 | 内容 |
|---|---|
| WordPress | バージョン5.6以降(アプリケーションパスワード標準搭載)。レンタルサーバー上で稼働していること |
| Claude Code | Anthropicの公式CLI。Claude Pro以上のプランで利用可 |
| Python 3 | 投稿スクリプト用(requests パッケージ) |
| 所要時間 | 初期構築 約1時間(2回目以降は数分) |
構築手順
手順1|アプリケーションパスワードを発行する
WordPress管理画面の「ユーザー」→「プロフィール」を開き、下部の「アプリケーションパスワード」欄で名前(例: blog-pipeline)を付けて発行します。表示された24文字のパスワードはこの画面を離れると二度と表示されないため、その場でコピーしてください。
これは通常のログインパスワードとは別物で、API接続専用です。漏えいが疑われる場合も、この専用パスワードだけを削除すれば無効化できます。
手順2|接続情報を安全に保存する
サイトURLとユーザー名は設定ファイル(config.json等)に、パスワードは環境変数に分けて保存します。パスワードをファイルに平文で書かないのがポイントです。
# ~/.zshrc に追記
export WP_APP_PASSWORD='xxxx xxxx xxxx xxxx xxxx xxxx'
ターミナルでは使えるのに、Claude Codeやcronから実行すると環境変数が空になる——実際にはまりました。原因は、自動実行される非対話シェルでは
~/.zshrc が読み込まれないこと。スクリプト実行前に source ~/.zshrc を挟むか、環境変数を明示的に渡すことで解決します。手順3|REST APIで下書き投稿する
WordPressには標準でREST APIが備わっており、プラグイン追加なしで投稿できます。核になるコードはこれだけです。
import os, requests
requests.post(
"https://あなたのドメイン/wp-json/wp/v2/posts",
auth=("WPユーザー名", os.environ["WP_APP_PASSWORD"]),
json={
"title": "記事タイトル",
"content": "本文HTML",
"status": "draft", # 下書き固定。公開判断は人間が行う
},
)
status を "draft" に固定しておけば、スクリプトが何度動いても勝手に公開されることはありません。スラッグ(URL)やメタ情報も同じAPIで設定できます。
投稿したHTMLをブロックエディタで開くと「このブロックには、想定されていないか無効なコンテンツが含まれています」と警告が出ることがあります。原因は、見出しタグに
style= を直書きするなど、エディタが認識できない形のHTMLです。装飾はテーマの「追加CSS」に分離し、本文はシンプルなブロック形式に保つと警告は出なくなります。手順4|運用ルールをファイルに書いて再現性を持たせる
Claude Codeはプロジェクトフォルダの CLAUDE.md というファイルを自動で読み込みます。ここに「必ず下書き投稿にする」「デザインの規約」「SEOのチェックリスト」といったルールを書いておくと、毎回の指示なしで同じ品質の記事が再現されます。口頭で毎回指示するのとの差は、運用が長くなるほど効いてきます。
筆者の場合、初回にルール整備まで済ませたことで、2本目以降は「今週のブログ記事作成」と一言伝えるだけで、テーマ選定から下書き投稿・投稿前チェックまでが同じ手順で走るようになりました。
自動化しても「人間に残すべき」作業
ここが本記事でいちばん伝えたい点です。全部を自動化すると、かえってブログの価値が下がります。
| 作業 | 担当 | 理由 |
|---|---|---|
| 執筆・投稿・チェック | 自動化してよい | 機械的な作業。ミスも減る |
| 体験談・一次情報 | 人間 | AIに書かせると虚偽体験談になる。検索評価の核(E-E-A-T)もここ |
| 事実確認 | 人間+AIの併用 | AIの誤認・古い情報をそのまま公開しないため |
| 公開判断 | 人間 | 最後の品質ゲート。draft固定はこのための設計 |
体験のない記事の量産は、Googleのスパムポリシー(スケールコンテンツの不正使用)でサイトごと評価を落とされるリスクがあります。自動化は「量産の道具」ではなく「体験を記事にする時間を作る道具」と捉えるのが、長く続けるコツです。
運用スタイルの比較
| スタイル | 1記事の手間 | 向き・不向き |
|---|---|---|
| 手動運用 | 数時間 | 確実だが、周辺作業に時間を奪われる |
| 半自動(本記事の構成) | 30〜45分 | レビューと体験談に集中できる。おすすめ |
| 完全自動 | ほぼゼロ | 品質事故と量産ペナルティのリスク。非推奨 |
この仕組みはWordPressが動くレンタルサーバーがあれば、今日から構築できます。筆者はConoHa WINGでWordPressを運用しています。
よくある質問
追加の料金はかかりますか?
Claude Proなどの契約範囲内で使えます(2026年7月時点)。なお、プログラム経由の利用枠を分離する変更が一度発表され、現在は一時停止中という経緯があります。詳しくは Claude有料プラン「対話と自動化」分離とは? で整理しています。
プログラミングの知識は必要ですか?
コード自体はClaude Codeに書いてもらえるため、深い知識は不要です。ただし「何をしているか」を理解しながら進めると、エラー時に対処しやすくなります。本記事の手順どおりなら、コピーと設定だけで動きます。
公開まで全部自動化してはいけませんか?
技術的には可能ですが、おすすめしません。事実誤認の公開リスクに加え、体験のない記事の量産はサイト全体の検索評価を下げる要因になります。公開判断と体験談は人間に残すのが、結果的にいちばん効率的です。
まとめ
- WordPressのアプリケーションパスワード+REST APIで、Claude Codeから下書き投稿まで自動化できる。
- 投稿は draft 固定。公開判断・体験談・事実確認は人間に残すのが品質の生命線。
- ルールを CLAUDE.md に書いておくと、2回目以降は一言で同じ品質が再現される。
まずはアプリケーションパスワードの発行から始めてみてください。WordPress環境がまだない場合は、レンタルサーバーの用意が最初の一歩になります。

コメント