導入
「ブログ記事を書く時間がなかなか取れない」「ChatGPTを使って記事作成を効率化したいけれど、投稿作業まで自動化する方法がわからない」——そんな悩みを持つ方に向けて、この記事ではChatGPTとPythonを組み合わせてWordPressに記事を自動投稿する方法を、初心者向けにわかりやすく解説します。
難しいプログラミング知識がなくても、基本的な流れさえ理解すれば、記事の下書き作成から投稿までの一連の作業を自動化できます。本記事では、必要な準備から実際のコードの書き方まで、順を追って説明していきます。
WordPress自動投稿に必要な準備
ChatGPTとPythonを使った自動投稿を実現するには、大きく分けて3つの準備が必要です。
1. WordPress側の設定(アプリケーションパスワードの発行)
WordPressにはバージョン5.6以降、標準機能として「アプリケーションパスワード」という仕組みが搭載されています。これはWordPress REST APIを使って外部から安全に投稿操作を行うための認証情報です。
WordPress管理画面の「ユーザー」→「プロフィール」ページ下部にある「アプリケーションパスワード」セクションから、任意の名前を入力して新しいパスワードを発行できます。発行されたパスワードは再表示できないため、必ず控えておきましょう。
2. Python環境の準備
Pythonがインストールされていない場合は、公式サイトから最新版をダウンロードしてインストールしてください。今回の自動投稿では、HTTP通信を行うための「requests」ライブラリと、ChatGPT(OpenAI API)を利用するための「openai」ライブラリを使用します。以下のコマンドでインストールできます。
pip install requests openai
3. OpenAI APIキーの取得
ChatGPTの機能をプログラムから呼び出すには、OpenAIの公式サイトでアカウントを作成し、APIキーを発行する必要があります。発行したAPIキーは第三者に漏れないよう厳重に管理してください。
Pythonで記事生成から投稿までを実装する
準備が整ったら、実際にPythonコードを書いていきましょう。処理の流れは「①ChatGPTで記事本文を生成する」「②WordPressのREST API経由で投稿する」という2ステップです。
ステップ1:ChatGPTで記事本文を生成する
from openai import OpenAI
client = OpenAI(api_key="あなたのAPIキー")
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=[
{"role": "user", "content": "初心者向けにPythonの基本文法を解説する記事を書いてください。"}
]
)
article_content = response.choices[0].message.content
print(article_content)
このコードでは、ChatGPTのAPIに対してプロンプト(指示文)を送り、生成された記事本文を変数に格納しています。プロンプトの内容を変更することで、さまざまなテーマの記事を生成できます。
ステップ2:WordPress REST APIで投稿する
次に、生成した記事をWordPressに投稿します。WordPressにはREST APIが標準で用意されており、requestsライブラリを使ってHTTPリクエストを送るだけで投稿処理が行えます。
import requests
url = "https://あなたのサイトURL/wp-json/wp/v2/posts"
username = "WordPressのユーザー名"
app_password = "発行したアプリケーションパスワード"
data = {
"title": "Pythonの基本文法を解説",
"content": article_content,
"status": "draft" # 下書きとして保存。公開する場合は"publish"
}
response = requests.post(url, json=data, auth=(username, app_password))
if response.status_code == 201:
print("投稿に成功しました!")
else:
print("エラーが発生しました:", response.text)
ここでは投稿ステータスを「draft(下書き)」に設定しています。内容を確認せずにいきなり公開するのは不安という方は、まず下書き保存にしておき、管理画面で内容をチェックしてから公開する運用がおすすめです。
まとめ
本記事では、ChatGPTとPythonを使ってWordPressブログへの自動投稿を行う方法を紹介しました。ポイントを整理すると以下の通りです。
- WordPress側では「アプリケーションパスワード」を発行し、外部からの安全なアクセスを可能にする
- Python環境に「requests」と「openai」ライブラリを導入する
- OpenAI APIを使って記事本文を生成する
- WordPress REST APIを使って生成した記事を投稿する
最初はコードを書くことに戸惑うかもしれませんが、一度仕組みを作ってしまえば、その後の記事作成・投稿作業を大幅に効率化できます。まずは下書き保存から試してみて、動作に慣れてきたら公開設定に切り替えるなど、段階的に運用してみてください。
\ 高速WordPress環境を構築するなら /
