wp_set_object_terms

(2.3.0以降)
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

関連

お勧めコンテンツ

WordPressの鼓動(2013年10月1日 登録)

WordPressでは、Ajaxを利用する方法の1つとしてadd_action関数を利用することができる。この方法を調べている過程で、'heartbeat'というおもしろそうなAjaxアクションがあったので、紹介しておく。

カスタムフィールド関連関数のおさらい(2012年6月22日 登録)

カスタムフィールドは、投稿記事の拡張情報としてよく利用されている。投稿ページで登録した情報をアーカイブや投稿ページで表示しているが、投稿ページを表示する際にカスタムフィールドの値を更新して、サイドバーのようなページ内要素に利用したりしている。

Slightly troublesome permalink:プラグイン作ってみました(2012年2月9日 登録)

カテゴリーを含んだパーマリンクを設定している場合、複数のカテゴリーを指定した投稿記事のパーマリンクのURLに目的のカテゴリーとは異なるカテゴリーが適用された経験はないだろうか。このプラグインは、パーマリンクに適用されるカテゴリーをコントロールし、希望通りのパーマリンクを設定します。

プラグインで注意が必要な関数(2013年11月27日 登録)

先日「Login rebuilder」という自作プラグインをアップデートした際、ユーザーさんからエラーになると連絡をいただいた。標準環境では問題なく、どうやら何らかのプラグインが影響しているらしい。

コメントの「ウェブサイト」止めました(2014年4月14日 登録)

とあるサイトのスパムコメントが多く、その都度のスパム指定するのが面倒である。これまでいくつか対策を行ってきたが、そういった対応にもいい加減うんざりしてきたので、試験的に「ウェブサイト」を無効化しようと思った。

最終更新日時 : 2013-08-08 15:33