Gemini API × WordPress 自動投稿を“現場目線”で眺めた記録
生成AIで記事を書かせ、そのままWordPressに投稿する。発想としてはシンプルで、ブログ運用のコスト削減にも直結しそうに見える。実際、同じことを考える人は増えている。
ただ、現場でその手の自動化をやろうとすると、地味なところで足を取られる。今回、Gemini API を使って「商品名を入力 → 記事生成 → WordPressに自動投稿」までをつなごうとした試みを近くで見ていて、あらためて“自動化の難しさの種類”が整理できたので、観察メモとしてまとめておく。
1. 目指したものは「全部つながる一発ルート」
構想自体は分かりやすい。
-
商品名などの入力を受ける
-
Gemini APIで、本文+SEOメタ情報(タイトル、ディスクリプション、タグ等)を生成する
-
WordPress REST APIで投稿する(下書き or 公開)
この流れが成立すれば、「書く」工程を大幅に短縮できる。問題は、ここから先が“一本道じゃない”ことだった。
2. 失敗の原因は大きく3種類あった
現象としては 400 / 404 / 429 といったHTTPエラーが出たり、JSONが崩れたり、WordPress側で弾かれたりする。よくあるやつだ。が、今回の学びは「エラーが出る理由が、同じ“API連携”の一言では片付かない」点にある。
(1) 仕様の“表記揺れ”が致命傷になる(400系)
生成AIとやり取りするとき、こちらは「だいたいこういう意味だよね?」という気持ちでパラメータを組みたくなる。でもAPIは意味を読まない。文字が合わないと、即死する。
特に、キャメルケース/スネークケースの違い、古いサンプルの写経、モデルごとの微妙な要求差分。こういう“人間には些細に見える違い”が、動かない理由になり続ける。
さらにやっかいなのは、AIに実装相談したとき。AIはそれっぽいコードを出すが、そのコードが“今の仕様の正解”とは限らない。ここで時間が溶ける。
(2) モデル名とAPIバージョンの組み合わせ問題(404系)
「そのモデル名、存在しません」と言われるやつ。これもあるある。
面倒なのは、モデル名が正しい/間違いという単純な話ではなく、エンドポイントのバージョン(例:v1 / v1beta)と提供状況、さらには地域やプランなど、複数の条件で結果が変わりうる点だ。
つまり「ネットで見たモデル名を入れれば動く」という雑な期待が成立しにくい。モデル更新のスピードが速い領域ほど、この問題は起きやすい。
(3) 長文を一撃で生成しようとすると制限にぶつかる(429系)
3,000文字級の記事をワンショットで生成して、しかもメタ情報もセットで返してもらう。これは体感として、**“重いリクエスト”**になりやすい。
すると、レート制限や利用枠に当たりやすくなる。もちろん回避策はある。例えば
-
まずアウトライン生成
-
次に見出しごとに本文生成
-
最後に統合・整形
みたいな段階処理。だが、段階処理を入れると今度は「統合時の整形」「JSONの整合」「途中失敗のリトライ戦略」など、システム設計が一気に難しくなる。自動化で減らしたい手間が、別の手間に変身する。
3. 「動かない」より困るのは「たまに動く」
今回の試みで印象的だったのは、完全に詰まるというより、部分的に動いてしまう瞬間があることだ。
-
今日は通るが、明日は通らない
-
JSONが返るが、構造が壊れる日がある
-
WordPressに投稿できるが、タグやメタが欠落することがある
この「たまに成功」が最も厄介で、原因切り分けに時間がかかる。運用に入れるには再現性が必要だが、生成AIはそもそも出力が揺れる。揺れを吸収するガードレール(バリデーション、修復、再生成、フォールバック)を作るほど、結局プロダクトは重くなる。
4. もう一段の問題:仮に動いても“量産”が強いとは限らない
技術的に通しても、運用面で別の壁が立つ。
最近は、一般情報をそれっぽくまとめた記事は評価されにくい。検索側の変化もあるし、ユーザー側も「どこでも読める情報」では動かない。クリックされる理由は、体験・検証・比較・失敗談みたいな一次性に寄る。
だから、仮に「自動投稿」ができても、量産自体が目的化すると、成果につながりにくい。ここは“自動化の成功”と“ブログ運用の成功”が別物という話だ。
5. 結論:AIは“全自動執筆機”より“編集助手”として強い
外から見た結論は、わりと現実的になる。
-
全自動投稿まで一直線にやると、仕様差分・制限・揺れで崩れやすい
-
成果につながるのは「叩き台生成」「構成案」「要点抽出」「見出し設計」「校正」など、人間の作業を置き換えすぎない使い方
-
仕上げは人間が責任を持つほうが、品質と継続性が安定する
今回の試みは、失敗というより「どこにコストが発生するか」を可視化した点に価値があったと思う。楽に見える一本道ほど、実際は舗装されていない。
実務メモ:これから同じことをやるなら(第三者の提案)
自動化を諦める必要はない。ただし、狙いどころを変えると現実味が出る。
-
投稿は“下書き”まで(公開は手動。事故が減る)
-
生成は段階化(アウトライン→節生成→整形)
-
JSONは厳格に(バリデーション前提。壊れたら再生成)
-
WordPress側の要件を先に固定(権限・REST・メタ・タグ運用)
-
成功条件を小さく(まず「一定品質の下書きが毎回作れる」を達成する)

