Claude×Zapier×WordPressで記事を自動生成する方法

「記事ネタの管理」「AIでの本文生成」「WordPressへの下書き保存」を毎回手作業で行っていると、思った以上に時間がかかります。

そこで今回は、Googleスプレッドシートに登録したキーワードをもとに、Zapier経由でClaude APIを呼び出し、WordPressに下書き記事を自動保存する方法をまとめました。

この仕組みを作っておけば、あとはスプレッドシートにキーワードを追加するだけで、毎朝自動で1記事ずつ生成できるようになります。

この記事でできること

  • Googleスプレッドシートで記事キーワードを管理できる
  • Claude APIでSEO記事のタイトル・本文・タグを自動生成できる
  • 生成した記事をWordPressに自動で下書き保存できる
  • 処理済みのキーワードをスプレッドシート上で自動更新できる

今回の全体像

今回構築するフローは以下の通りです。

  1. Zapierが毎朝8:30に起動
  2. Googleスプレッドシートから「pending」のキーワードを1件取得
  3. Claude APIで記事タイトル・本文・タグを生成
  4. WordPressに下書き投稿として保存
  5. スプレッドシートのステータスを「done」に更新

つまり、キーワード管理から記事の下書き保存までを自動化する仕組みです。

事前に準備しておくもの

  • WordPressサイト
  • Zapierアカウント
  • Claude APIキー
  • Googleアカウント
  • Googleスプレッドシート

なお、今回はZapierアカウント作成やClaude APIキー取得が完了している前提で、WordPress接続準備以降の流れを解説します。

PART 1|WordPressのAPI接続準備

まずは、ZapierからWordPressに安全に接続するために、アプリケーションパスワードを発行します。

1. WordPress管理画面にログインする

WordPressの管理画面にアクセスし、通常通りログインします。

https://xxxxxxxxxxxxxxxx/wp-admin/

2. アプリケーションパスワードを発行する

管理画面の左メニューから「ユーザー」→「プロフィール」を開きます。

ページ下部にある「アプリケーションパスワード」の欄で、新しいアプリケーション名に zapier と入力し、「新しいアプリケーションパスワードを追加」をクリックします。

すると、以下のような専用パスワードが表示されます。

xxxx xxxx xxxx xxxx xxxx xxxx

このパスワードは必ずコピーして保存してください。
画面を閉じると再表示できません。

3. REST APIの動作確認をする

次に、WordPressのREST APIが有効か確認します。ブラウザの新しいタブで以下のURLを開きます。

https://xxxxxxxxxxxxxxx/wp-json/wp/v2/posts

[ または { で始まるJSONデータが表示されればOKです。
もしページが表示されない場合は、REST APIが無効化されている可能性があります。

PART 2|Googleスプレッドシートの準備

次に、記事キーワードを管理するスプレッドシートを作成します。

1. 新しいスプレッドシートを作成する

Googleスプレッドシートを開き、空白のスプレッドシートを作成します。タイトルは以下のように設定しておくと管理しやすいです。

xxxxxxxxxxx_記事キーワード管理

2. 1行目にヘッダーを入力する

A1からE1まで、以下の見出しを入力します。

A1: keyword
B1: status
C1: title
D1: wp_post_id
E1: created_at

3. テスト用のキーワードを入力する

2行目に、まずはテスト用として以下を入力します。

A2: GA4の設定方法 初心者向け完全ガイド
B2: pending

C列〜E列は空欄のままで問題ありません。後ほどZapierが自動で埋めます。

4. スプレッドシートIDを控える

スプレッドシートのURLに含まれるIDを必要に応じて確認しておきます。

https://docs.google.com/spreadsheets/d/【ここがID】/edit

PART 3|Zapierで自動化フローを作成する

ここからはZapier上で、記事自動生成フローを組んでいきます。

1. 新しいZapを作成する

Zapierにログインし、右上の「+ Create」→「Zaps」をクリックします。

Zapのタイトルは、たとえば以下のようにしておくとわかりやすいです。

xxxxxxxxx_記事自動生成

STEP 1|毎朝8:30に起動する設定

最初にトリガーとして、毎朝自動でZapが動くようにします。

  1. Trigger をクリック
  2. 検索欄に Schedule と入力
  3. Schedule by Zapier を選択
  4. Event は Every Day を選択

設定は以下の通りです。

  • Time of Day8:30 AM
  • TimezoneAsia/Tokyo

その後、Continue → Test trigger → Continue with selected record と進めます。

STEP 2|Googleスプレッドシートからキーワードを取得する

次に、スプレッドシートの中から pending 状態のキーワードを取得します。

  1. ボタンをクリック
  2. Google Sheets を選択
  3. Event は Lookup Spreadsheet Row を選択

初回のみGoogleアカウントとの連携が必要です。Sign in to Google Sheets をクリックし、Googleアカウントでログインして許可します。

設定内容は以下の通りです。

  • Spreadsheet → 作成したスプレッドシート
  • Worksheet → シート1 または記事キーワード管理
  • Lookup ColumnB
  • Lookup Valuepending
  • Bottom-UpTrue

テストを実行し、keyword に以下のような値が表示されれば成功です。

GA4の設定方法 初心者向け完全ガイド

STEP 3|Claude APIで記事を自動生成する

続いて、取得したキーワードをもとにClaude APIで記事を生成します。

  1. ボタンをクリック
  2. Code by Zapier を選択
  3. Event は Run JavaScript を選択

Input Dataの設定

+ Add entry を2回押し、以下のように設定します。

  • keyword → STEP 2 の Keyword を選択
  • anthropic_api_key → Claude APIキーを貼り付け

Code欄に貼るJavaScript

const keyword = inputData.keyword;
const apiKey = inputData.anthropic_api_key;

const prompt = `あなたはWEBマーケティング専門メディア「マーケの森」のライターです。
以下のキーワードで、SEOを意識したWordPress記事を作成してください。

キーワード:${keyword}

必ずJSONのみで返してください。前置きや説明文は不要です。

{
  "title": "記事タイトル(32文字以内、キーワードを含む)",
  "content": "記事本文(WordPress用HTML形式、h2/h3/p/ul/olタグを使用、2000〜3000文字)",
  "meta_description": "メタディスクリプション(120文字以内)",
  "tags": "タグ1,タグ2,タグ3"
}

記事の要件:
- 対象読者:マーケ担当者・WEB担当者・副業ブロガー
- 語尾:です・ます調
- 構成:導入(悩み提起)→ h2で3〜4セクションの解説 → まとめ
- 冒頭に「この記事でわかること」をul boxで記載
- 各h2の下にポイントをリストで記載`;

const response = await fetch("https://api.anthropic.com/v1/messages", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "x-api-key": apiKey,
    "anthropic-version": "2023-06-01"
  },
  body: JSON.stringify({
    model: "claude-sonnet-4-20250514",
    max_tokens: 4096,
    messages: [{ role: "user", content: prompt }]
  })
});

const data = await response.json();

if (!data.content || !data.content[0]) {
  throw new Error("API Error: " + JSON.stringify(data));
}

const text = data.content[0].text;
const jsonMatch = text.match(/\{[\s\S]*\}/);
if (!jsonMatch) throw new Error("JSONが見つかりません: " + text);

const article = JSON.parse(jsonMatch[0]);

return {
  title: article.title,
  content: article.content,
  meta_description: article.meta_description,
  tags: article.tags
};

その後、Continue → Test をクリックし、titlecontenttags が返ってきたら成功です。

STEP 4|WordPressに下書き保存する

次は、STEP 3で生成した記事データをWordPressに保存します。

  1. ボタンをクリック
  2. WordPress を選択
  3. Event は Create Post を選択

ここで注意したいのは、Zapierで選ぶのは「WordPress」であり、「WordPress.com」ではないという点です。

アカウント連携の設定

Sign in to WordPress をクリックし、以下を入力します。

  • Site URLhttps://xxxxxxxxxxxx.com
  • Username → WordPressのユーザー名
  • Application Password → 発行したアプリケーションパスワード

Yes, Continue to WordPress をクリックして接続します。

投稿設定のマッピング

接続後の設定画面では、各項目にSTEP 3の出力を割り当てます。

  • Title → STEP 3 の title
  • Content → STEP 3 の content
  • StatusDraft
  • Tags → STEP 3 の tags

Zapierでは、入力欄の右端にある「+」ボタンから前のステップの値を選択できます。
たとえば Title なら STEP 3 → title、Content なら STEP 3 → content を選びます。

設定後、Continue → Test を押し、WordPressの「投稿」→「下書き」に記事が追加されていれば成功です。

STEP 5|Googleスプレッドシートのステータスを更新する

最後に、処理済みキーワードの状態を done に更新します。

  1. ボタンをクリック
  2. Google Sheets を選択
  3. Event は Update Spreadsheet Row を選択

設定内容は以下の通りです。

  • Spreadsheet / Worksheet → 同じシートを選択
  • Row → STEP 2 の Row Number
  • B列(status)done
  • C列(title) → STEP 3 の title
  • D列(wp_post_id) → STEP 4 の ID
  • E列(created_at)Zap ran at

テスト実行後に、スプレッドシートの status が done に変わっていれば完成です。

最後にZapを公開する

すべての設定が完了したら、Zapier右上の「Publish」をクリックします。

ZapのスイッチがONになっていれば、翌朝8:30から自動で処理が走ります。

うまくいかないときのチェックポイント

WordPress接続で403エラーが出る場合

WordPress接続時に403エラーが出る場合は、サーバーやセキュリティ設定が原因のことがあります。特に以下を確認してください。

  • ConoHa WINGのWAF設定
  • 海外アクセス制限のXML-RPC制限
  • WordPress側のセキュリティプラグイン
  • Base URLに /wp-admin/ を付けていないか

Site URLには必ず以下を入力します。

https://xxxxxxxxxxxxxxxxxx.com

STEP 3の出力がSTEP 4で選べない場合

その場合は、STEP 3のTestが未実行の可能性があります。
一度STEP 3を再テストしてから、STEP 4の画面を開き直してください。

まとめ

ZapierとClaude API、そしてWordPressを組み合わせることで、記事作成フローの大部分を自動化できます。

特に、以下のような運用をしたい人には相性が良い仕組みです。

  • 記事ネタだけ先に大量にストックしておきたい
  • 毎朝1本ずつ下書きを作りたい
  • AIを使って記事制作の初速を上げたい
  • WordPressへの転記作業をなくしたい

一度設定してしまえば、あとはキーワードを追加していくだけで記事生成の土台が回るようになります。まずは1件テストで動かし、問題なければ本番運用に広げていくのがおすすめです。

コメント