導入:AIが書いた記事、まだ手作業で「コピペ入稿」していませんか?
今日も一日、現場仕事お疲れ様です!
以前の記事では、Difyを使って「プロ顔負けのブログ記事を全自動で書いてくれるAI執筆エージェント」を作る方法をご紹介しました。実際に試していただいた同世代の個人事業主の方からも、「これでやっとブログ更新が続けられそうです!」と嬉しい反響をいただいています。
しかし、人間とは欲深いもので……(笑)。 AIが素晴らしい記事を書いてくれても、それをコピーして、重たいWordPressの管理画面を開いて、新規追加を押して、貼り付けて、見出しを整えて……。現場仕事でクタクタになって帰宅した深夜には、この**「コピペと入稿作業」すら面倒くさく感じてきませんか?**
「せっかくAIが書いてくれたんだから、そのまま直接WordPressの『下書き』にブチ込んでおいてくれないかな…」
その願い、GAS(Google Apps Script)を繋げば叶います!
今回は、前回作った執筆AIエージェントをさらに進化させ、スマホやパソコンからテーマを入力して「実行」をポチッと押すだけで、たった数十秒後にはWordPressへ直接「下書き保存」まで完了させてしまう、超速・完全無人のブログ入稿システムの作り方を大公開します!
実は私、この連携作業に挑戦した際、「403 Forbidden」という絶望的なサーバーエラーに直面し、丸一日を溶かしました。 今回は、日本のレンタルサーバー(ConoHa WINGなど)を使っている人が100%引っかかる「海外アクセス制限」や「WAF」といった巨大な壁のぶち破り方も、私のリアルな体験談として全て解説します。
同世代の皆さん、立ちはだかる数々のエラーを一緒に乗り越えて、コピペ作業ゼロの圧倒的な効率化を手に入れましょう!
結論:AIの天才ライターと、GASの敏腕編集者を連携させる
今回の自動化の仕組みは、3つのツールによるバケツリレーです。
- Dify(天才ライター): テーマを受け取り、プロ顔負けの構成と熱量でブログの本文を執筆する。
- GAS(敏腕な編集者): Difyから原稿を受け取り、WordPressの裏口へ向けて全速力で走る。
- WordPress(受付): GASから原稿を受け取り、「下書き」としてそっと保存する。
難しそうに見えますが、私が用意したコードをコピペし、設定をクリックしていくだけで中学生でも作れるように手順をまとめました。さあ、順番に構築していきましょう!
手順:WordPress完全自動投稿ボットの作り方
STEP 1:WordPressで「ロボット用の合鍵」を作る
まずは、GAS(ロボット)があなたのWordPressの裏口から入るための、専用のパスワードを発行します。
- WordPressの管理画面(ダッシュボード)にログインします。
- 左側のメニューから**「ユーザー」>「プロフィール」**をクリックします。
- 画面を一番下までスクロールし、**「アプリケーションパスワード」**という項目の「新しいアプリケーションパスワード名」に
GAS連携用と入力してボタンを押します。 - 画面に
xxxx xxxx xxxx xxxx xxxx xxxxのような長いパスワードが表示されるので、絶対に今すぐコピーしてメモ帳に貼り付けてください。(※二度と表示されません!) - 同じプロフィール画面の一番上まで戻り、グレーアウトして変更できなくなっている**「ユーザー名」**もメモしておきます。
STEP 2:GASのプログラムを設定する(コピペでOK!)
次に、Googleドライブから「Google Apps Script(GAS)」を開き、以下のコードを貼り付けます。
▼ コピペ用:GASコード(全行に丁寧な解説コメント付き!)
JavaScript
// Difyからブログの原稿が送られてきた時に、自動で動き出す特別なプログラムです
function doPost(e) {
// Difyから送られてきた暗号データ(JSON)を、プログラムで読めるお弁当箱の形に翻訳します
const jsonData = JSON.parse(e.postData.contents);
// Difyが考えた「記事のタイトル」を取り出して箱に入れます
const postTitle = jsonData.title;
// Difyが書いた「記事の本文(中身)」を取り出して箱に入れます
const postContent = jsonData.content;
// 【超重要①】あなたのWordPressブログのURLを設定します(最後は必ず /wp-json/wp/v2/posts にします!)
const wpUrl = "https://あなたのブログのURL/wp-json/wp/v2/posts";
// 【超重要②】STEP 1で確認したWordPressの「ユーザー名」を入れます
const wpUser = "あなたのユーザー名";
// 【超重要③】STEP 1で発行した「アプリケーションパスワード(空白もそのまま)」を入れます
const wpPassword = "発行した長いパスワード";
// ユーザー名とパスワードをくっつけて、WordPressの警備員に見せるための「通行証(暗号)」を作ります
const credentials = Utilities.base64Encode(wpUser + ":" + wpPassword);
// WordPressに送る「手紙の中身(タイトルと本文、そして下書き状態にする設定)」をまとめます
const payload = {
title: postTitle,
content: postContent,
status: "draft" // いきなり世界に公開せず、まずは「下書き」として保存する安全設定です
};
// WordPressの裏口を叩くための、詳しい設定(荷札)を作ります
const options = {
method: "post", // データを「送る」という命令です
contentType: "application/json", // 中身はJSONというお弁当箱の形式ですよ、と伝えます
headers: {
"Authorization": "Basic " + credentials // ここでさっき作った「通行証」を見せて中に入ります
},
payload: JSON.stringify(payload) // 手紙の中身をガムテープで縛って荷物に詰め込みます
};
// GASの配達員が、WordPressの裏口に向かって荷物を力いっぱい投げ込みます!
UrlFetchApp.fetch(wpUrl, options);
// 無事に終わったら、Difyに「WordPressへの下書き保存、完了しました!」と報告します
return ContentService.createTextOutput("Success");
// プログラムはここで終わりです
}
コードの中の【超重要①〜③】を自分の情報に書き換えたら、**「デプロイ」>「新しいデプロイ」をクリック。アクセスできるユーザーを「全員」**にしてデプロイし、発行された「ウェブアプリのURL」をコピーします。 (※IDを直した時は、必ず「新しいデプロイ」で上書きするのを忘れないでくださいね!)
STEP 3:Difyで「魂のライター」を設定する
Difyで「チャットフロー(ワークフロー)」を作成し、以下の3つのブロックを繋ぎます。
- 開始ブロック: 入力フィールドに「段落」を追加し、変数名を
blog_themeとします。 - LLMブロック: gpt-4oなどを選び、以下の「超・本格派プロンプト」をコピペします。これがペラペラの記事を劇的に変える魔法の指示書です!
▼ コピペ用:システムプロンプト
Plaintext
あなたは「中年からのAI再スタート」というブログを運営する、49歳の現役清掃業(個人事業主)です。
ユーザーから与えられたテーマについて、以下の【執筆ルール】と【記事構成】に沿って、読者の心を激しく揺さぶる、圧倒的な熱量とボリュームのブログ記事を執筆してください。
【執筆ルール】
・ターゲットは「ITに苦手意識がある同世代の個人事業主や、副業に挑戦したい中高年」です。
・語り口は「49歳の等身大」。偉そうにせず、親しみやすく、自分の失敗談や現場でのリアルなエピソードを交えること。
・専門用語は一切使わず、中学生でも分かるレベルの例え話に噛み砕いて説明すること。
・文字数は3000文字以上を目安に、内容を極限まで深掘りして濃密にすること。
・HTMLタグ(<h2>、<h3>、<ul>、<li>、<strong>など)を駆使して、視覚的に読みやすく装飾すること。
【記事構成】
1. 導入:苦労などの共感から入り、読むメリットを熱く伝える。
2. 結論:出し惜しみせず、結論ファーストで述べる。
3. 具体的な解説・手順:H2とH3タグを使い、具体的にどう行動すればいいのかステップで解説する。
4. まとめ:最後に同世代の読者の背中を力強く押すメッセージで締める。
【出力の絶対ルール】
・以下のJSONフォーマットのみを出力してください。
・挨拶や記号は含めず、波括弧 { } で始まるデータのみを出力すること。
{
"title": "(思わずクリックしたくなる魅力的なタイトル)",
"content": "(HTMLで美しく装飾された、熱量MAXで大ボリュームの本文)"
}

- HTTPリクエストブロック: メソッドを
POST、URLにSTEP 2のGASのURLを貼り付けます。ボディをJSONにし、LLMの出力結果(text)を変数として挿入します。
これでシステム自体は完成です!…が、ここでテスト実行をすると、99%の確率で「403 Forbidden(またはReached maximum retries)」という地獄のエラーに遭遇します。 次のステップがこの記事の最大のキモです。

STEP 4:絶望の「403エラー」!レンタルサーバーの3つの壁をぶち破れ

Difyから送ったデータがWordPressに届かない原因は、プログラムのミスではなく、レンタルサーバー(ConoHa WINGなど)の強力なセキュリティにあります。GAS(ロボット)のアクセスを「サイバー攻撃だ!」と勘違いして弾いているのです。 私はこれで丸一日溶かしました。以下の3つの設定をOFFにして、警備員を突破してください!
壁①:REST API制限 & プラグイン サーバーの管理画面(サイトセキュリティ等)から「REST API制限」を【OFF】にします。また、WordPressに「SiteGuard WP Plugin」などを入れている場合は、一時的に無効化してください。
壁②:WAF(ウェブ・アプリケーション・ファイアウォール) ConoHa WINGなどにある強力な盾です。これも一時的に【OFF】にします。(※テスト成功後は必ずONに戻し、ログからGASの通信だけを「除外」設定してください)
壁③:最大のラスボス「海外アクセス制限」! WAFをOFFにしても弾かれる時の真犯人はこれです。GASは「アメリカのサーバー(海外)」から動いているため、初期設定の「海外アクセス制限」に引っかかります。サーバー設定の「海外アクセス制限」の中にある**「REST API」という項目を【OFF】**にしてください!
これを突破して、Difyの画面で「Success」が出た時のガッツポーズは、何物にも代えがたい喜びですよ!

まとめ:数々のエラーの経験が、あなたの資産になる
お疲れ様でした!Difyでテーマを入力して実行し、数十秒経ったらご自身のWordPressの「投稿一覧」を開いてみてください。

見出し(H2タグ)や太字で綺麗に装飾され、圧倒的な熱量と文字数で書かれた完璧な記事が、「下書き」として静かに保存されているはずです。あとはスマホでサッと確認して、「公開」ボタンを押すだけ。
私が真っ赤なエラー画面に何度も心を折られそうになりながら気づいたのは、**「このエラーと戦った経験こそが、最高のブログコンテンツになる」**ということです。 プログラミング未経験の49歳でも、一つずつ原因を潰していけば、大企業が使うような全自動システムを構築できます。体力勝負の現場仕事は私たちの腕で。面倒なブログ執筆と事務作業は、今日からAIの相棒に任せましょう!
高何回もエラーが出てると以前出てきたエラーにぶち当たるのですぐに
解決できるようになるのでどはまりする回数が減ってきます。
次回のネタも考え中ですが、是非お楽しみに!

コメント