set_post_thumbnail() の使い方|説明・引数・注意点

説明

set_post_thumbnail() は、投稿のアイキャッチ画像を設定する関数です。

基本構文

set_post_thumbnail( int|WP_Post $post, int $thumbnail_id ): int|bool

引数

  • $post:投稿IDまたはオブジェクト
  • $thumbnail_id:添付ファイルのID

戻り値

設定できたらメタID(または true)。

使い方(サンプル)

set_post_thumbnail( 123, 45 );

注意点

  • 同じ値を再設定した場合は false が返ります。
  • 削除は delete_post_thumbnail()。

実務での使いどころ

  • アイキャッチ画像を、プログラムから設定するとき。
  • インポートや、フォームからの投稿で、アイキャッチ画像を付けるとき。

よくあるミスと対処

  • 存在しないメディアのIDを渡し、false が返る。
  • 添付画像として扱えないIDを渡すと、既存のアイキャッチ画像が、削除される場合がある。IDの種類を、確認してから渡す。
  • 投稿のIDと、メディアのIDを取り違える。第2引数は、メディア(添付ファイル)のID。
  • 戻り値を、確認していない。

NG例

set_post_thumbnail( $post_id, $post_id ); // 第2引数が、投稿のID

OK例

if ( ! set_post_thumbnail( $post_id, $attachment_id ) ) {
	// 設定できなかった
}

使い分け早見表

関数 役割
set_post_thumbnail() アイキャッチ画像を設定する
get_post_thumbnail_id() アイキャッチ画像のIDを取得する
has_post_thumbnail() アイキャッチ画像があるか判定する

関連項目

has_post_thumbnail()、get_post_thumbnail_id()

公式リファレンス:set_post_thumbnail() | Function | WordPress Developer Resources

コメント

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