ChatGPTとPythonで始めるWordPressブログ自動投稿の始め方【初心者向け】

AI活用術

導入

「ブログ記事を書く時間がなかなか取れない」「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環境を構築するなら /

【15日間無料】コアサーバーでWordPressを始める >

タイトルとURLをコピーしました