説明
mixed wp_insert_term( string $term, string $taxonomy [ , mixed $args = array() ] )
ターム(カテゴリや投稿タグ)を登録する。
パラメータ
- $termターム名を指定。
- $taxonomy'category'や'post-tag'などのタクソノミー名を指定。
- $args付加情報を連想配列または文字列で指定(省略時はarray())。連想配列の要素は次の通り。
キー名 内容 省略時の値 'alias_of' グループ用 '' 'description' 説明 '' 'parent' 親ターム(カテゴリ)のID(親がない場合は0) 0 'slug' スラッグ ''
返り値
タームが登録できた場合は'term_id'と'term_taxonomy_id'を要素に持つ連想配列を、登録できなかった場合は WP_Errorオブジェクトを返す。
[5.1.0]重複するターム情報が見つかった場合は、先に登録されていたターム情報の'term_id'と'term_taxonomy_id'を要素に持つ連想配列を返す。
注意
パラメータ$argsを省略した場合、付加情報は次のようになる。
array( 'alias_of' => '', 'description' => '', 'parent' => 0, 'slug' => '')
使用例
- 投稿タグ'新商品'を登録する。<?php wp_insert_term( '新商品', 'post_tag' ); ?>
- 小カテゴリ'トマト'を登録する(親カテゴリのIDは10)。<?php wp_insert_term( 'トマト', 'category', array( 'slug'=>'tomato', 'parent'=>10 ) ); ?>
フィルター
[3.0.0]タクソノミーの存在を確認後、'term_id_filter'フィルターを呼び出す。パラメータ$termと$taxonomyには本関数が受け取った内容が格納されている。$term = apply_filters( 'pre_insert_term', $term, $taxonomy );
$data = apply_filters( 'wp_insert_term_data', $data, $taxonomy, $args );
$duplicate_term = apply_filters( 'wp_insert_term_duplicate_term_check', $duplicate_term, $term, $taxonomy, $args, $tt_id );
$term_id = apply_filters( 'term_id_filter', $term_id, $tt_id );
アクション
ターム情報の更新直前に'edit_terms'アクションを実行する。パラメータ$term_idにはターム情報のIDが格納されている。do_action( 'edit_terms', $term_id );
do_action( 'edited_terms', $term_id );
do_action( "create_term", $term_id, $tt_id, $taxonomy );
do_action( "create_{$taxonomy}", $term_id, $tt_id );
do_action( "created_term", $term_id, $tt_id, $taxonomy );
do_action( "created_{$taxonomy}", $term_id, $tt_id );
do_action( 'saved_term', $term_id, $tt_id, $taxonomy, $update );
do_action( "saved_{$taxonomy}", $term_id, $tt_id, $update );
ソースファイル
/wp-includes/taxonomy.php最終更新 : 2020年08月31日 11:27
関連
お勧め
Emojin:プラグイン作ってみました(2015年3月21日 更新)
ちょっと前のTLでiOSの絵文字を含んだ投稿を保存すると、絵文字以降の文章がすべて消えた状態で保存されるといったツイートを見かけた。少し検索してみると、MySQLのデータベースの文字セットが「utf8」の場合、iOSの絵文字のような4バイトの文字を正常に保存できず、それ以降の文章も保存されないというものらしい。対処方法としてデータベースの文字セットを「utf8mb4」に変更するのが有効らしいのだが、他に回避策がないか考えてみた。Twenty Seventeenのフォントサイズを変更してみた(2021年12月15日 更新)
先日投稿した「続テーマを変更せずにWebフォントを使ってみた」では、テーマ「Twenty Seventeen」でもWebフォントを使えるようにした。その際、「Twenty Seventeen」のフォントサイズが少し小さく感じたので、今回はフォントサイズを調整してみた。
HTML entities button:プラグイン作ってみました(2021年4月28日 更新)
以前投稿した「HTML編集モードに定型文ボタンを追加する」をアレンジして、HTML編集モードに特殊文字(HTMLエンティティ)を挿入できるボタン、顔文字を挿入できるボタン、過去の投稿ページのリンクを挿入できるボタンを追加するプラグインを作ってみました。HTML編集モードの作業効率を向上させるプラグインです。2.1.0では「Dashiconsの挿入」を追加しました。HTML編集モードをメインに使用されている方は、お試しあれ。5.7の機能拡張:エクスポートファイルに更新日時が追加ほか(2021年2月23日 更新)
WordPressはサイト移行を支援する機能として投稿情報のエクスポート機能を備えている。5.7ではこのエクスポート機能が改良され、更新日時情報が追加されるようだ。
query_posts(WP_Queryクラス)でカスタムフィールドを使う(2011年9月15日 更新)
先週3回にわたってtax_queryパラメータを使ったカテゴリーや投稿タグ、投稿フォーマットの絞り込みを整理したが、その途中で目に付いたのが'meta_query'パラメータ。この'meta_query'パラメータは、カスタムフィールドの絞り込み条件を指定するためのもので、3.2で登場した新しいパラメータのようだ。