GPTsでブログ投稿時にアイキャッチ画像を自動設定する方法

WordPress

GPTsでブログ投稿時にアイキャッチ画像を自動設定する方法

はじめに

GPTsを使ってWordPressに記事を投稿する際、「アイキャッチ画像をどう設定するか」はひとつの課題です。GPTsでは現状、画像ファイルを直接生成・アップロードする手段が提供されていないため、工夫が必要です。

この記事では、GPTsから投稿時に画像検索用のキーワードだけを渡し、バックエンド側でGoogle検索API等を使って画像を取得・設定する方法をご紹介します。

画像設定の課題と代替案

GPTs単体では以下の制約があります:

  • 画像ファイルを直接生成・送信できない(base64やバイナリ非対応)
  • アイキャッチ画像に適した画像を取得する手段がない

しかし、ブログ投稿においてアイキャッチ画像は視認性やクリック率の向上に寄与するため、可能な限り自動化したいところです。

代替案:検索キーワード経由で画像を取得・設定

GPTsでは、次のような設計で問題を回避します:

  1. GPTsから投稿時に image_keyword を指定
  2. バックエンド(ラップされたAPI)で Google Custom Search API を呼び出し
  3. 最初にヒットした画像をダウンロードし、WordPressにアップロード
  4. 投稿と紐づけてアイキャッチ画像に設定
読者
読者

なるほど、GPTsからはキーワードだけ渡して、画像取得はサーバー側でやってるんですね!

設定方法の概要

以下はNode.jsベースでGoogle Custom Searchを使って画像を取得し、WordPressに設定する処理のサンプルです。

const axios = require('axios');
const FormData = require('form-data');

async function fetchImageUrl(keyword) {
  const apiKey = process.env.GOOGLE_API_KEY;
  const cx = process.env.GOOGLE_SEARCH_CX;
  const url = `https://www.googleapis.com/customsearch/v1?q=${encodeURIComponent(keyword)}&cx=${cx}&key=${apiKey}&searchType=image&num=1`;

  const res = await axios.get(url);
  return res.data.items?.[0]?.link || null;
}

async function uploadToWordPress(imageUrl, postId) {
  const imageData = await axios.get(imageUrl, { responseType: 'arraybuffer' });
  const fileName = imageUrl.split('/').pop();

  const form = new FormData();
  form.append('file', imageData.data, fileName);

  const uploadRes = await axios.post('https://your-wordpress-site.com/wp-json/wp/v2/media', form, {
    headers: {
      ...form.getHeaders(),
      Authorization: 'Basic YOUR_TOKEN'
    }
  });

  const mediaId = uploadRes.data.id;

  await axios.post(`https://your-wordpress-site.com/wp-json/wp/v2/posts/${postId}`, {
    featured_media: mediaId
  }, {
    headers: {
      'Content-Type': 'application/json',
      Authorization: 'Basic YOUR_TOKEN'
    }
  });
}

このように、GPTsから渡された image_keyword をトリガーに、サーバー側で一連の処理を自動化することで、自然なアイキャッチ画像設定が可能になります。

補足:画像生成の可能性と展望

将来的には、GPTsと画像生成モデル(例:DALL·E)を組み合わせ、キーワードから直接画像を生成→ホスティング→WordPressにアップロードという流れも現実的です。

このような仕組みが標準化されれば、ブログ運用の自動化はさらに一歩進むでしょう。

まとめ

  • GPTsは画像ファイル送信ができないため、image_keyword を使った代替手段が有効
  • バックエンド側でGoogle検索APIを使い画像を取得し、WordPressに設定
  • 将来的には画像生成の連携によってさらなる自動化も可能

GPTsとWordPressの連携をさらに進化させるための一歩として、ぜひ取り入れてみてください。

コメント

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