wp_set_object_terms

説明

mixed wp_set_object_terms( int $object_id, mixed $terms, mixed $taxonomy [ , bool $append = false ] )
投稿情報などにタクソノミーを設定する。

パラメータ

  • $object_id
    投稿情報などのIDを指定
  • $terms
    タームID、ターム名またはそれらの配列を指定
  • $taxonomy
    'category'や'post_tag'などのタクソノミー名またはその配列を指定
  • $append
    追加のみを行う場合はtrue、指定したタクソノミー以外を削除する場合はfalseを指定(省略時、false)

返り値

正しく設定できた場合はタームIDの配列を返す。設定できなかった場合は、エラー内容を示す WP_Errorオブジェクトを返す。

注意

カスタム投稿タイプにカテゴリを設定する場合は、 register_post_type関数による登録際、'taxonomies'プロパティに'category'を指定しておくこと。この指定がない場合は正しく動作しない。
wp_set_post_categories関数ではカテゴリーをIDまたはその配列で指定するが、このwp_set_object_terms関数は文字列で指定できるので、こちらのほうが便利かも。

使用例

  • 投稿IDが10の投稿情報に'ニュース'と'値下げ'のカテゴリーを設定する。
    <?php wp_set_object_terms( 10, array( 'ニュース', '値下げ' ), 'category' ); ?>

フィルター

実行するフィルターはありません。

アクション

タクソノミーの関連付け情報を追加する前に'add_term_relationship'アクションを呼び出す。
do_action( 'add_term_relationship', $object_id, $tt_id );
タクソノミーの関連付け情報を追加した後に'added_term_relationship'アクションを呼び出す。
do_action( 'added_term_relationship', $object_id, $tt_id );
タクソノミーの関連付け情報を削除する前に'delete_term_relationship'アクションを呼び出す。
do_action( 'delete_term_relationships', $object_id, $delete_terms );
タクソノミーの関連付け情報を削除した後に'deleted_term_relationship'アクションを呼び出す。
do_action( 'deleted_term_relationships', $object_id, $delete_terms );
返り値を返す直前に'set_object_terms'アクションを呼び出す。
do_action( 'set_object_terms', $object_id, $terms, $tt_ids, $taxonomy, $append, $old_tt_ids );

ソースファイル

/wp-includes/taxonomy.php

最終更新 : 2022年01月05日 12:15



お勧め

meta_compare_key使ってみた(2019年3月19日 更新)

ブロックエディターの登場により、標準のカスタムフィールドを使う機会はかなり減った気がする。そんな中、5.1.0で追加されたのが、カスタムフィールド名(メタキー)に含まれる文字列を指定する'meta_compare_key'キーだ。

WP_List_Tableクラスの「一括操作」フォームを使ってみた(2018年5月27日 更新)

今回は「WP_List_Tableクラスを使ってみた」の続き。投稿一覧やプラグインページなどにある「一括操作」(Bulkアクション)フォーム対応に関するメモである。

テーマから投稿画像のサイズを指定する(2012年3月15日 更新)

投稿記事に挿入する画像サイズは、サムネイル(150×150)、中サイズ(300×300)、大サイズ(1024×1024)がデフォルトだが、テーマによっては別のサイズを指定したい場合はある。基本的には、「設定」-「メディア」の「メディア設定」ページで指定できるが、テーマ内のfunctions.phpで設定しておくとちょっと便利かもしれない。

ログインページを変える(2014年9月12日 更新)

WordPressの標準的な不正ログイン対策としては、ログインIDは'admin'を避けるパスワードはユニークで長くする、場合によってはアクセスできるIPアドレスを制限する、といった具合だろう。これらの他に何かできないものだろうかと、ちょっと考えてみた。

新規投稿時の本文プレースホルダーテキストを変える(2021年9月9日 更新)

ブロックエディターに影響を与えるフィルターは多数存在する。今回紹介するフィルターはその1つで、新規投稿時の本文ブロックのプレースホルダーテキストを変更するものだ。