register_taxonomy

説明

WP_Taxonomy | WP_Error register_taxonomy( string $taxonomy, array | string $object_type, array | string $args = array() )
タクソノミーを登録する。

パラメータ

  • $taxonomy
    タクソノミー名を指定(32文字以内)。
  • $object_type
    紐づけするオブジェクト(データ)タイプまたはその配列を指定。
  • $args
    タクソノミーの属性情報を連想配列で指定(省略時はarray())。
    キー内容
    'labels'string[]タクソノミーのラベルを格納した連想配列を指定(省略時はarray())
    'description'stringタクソノミーの説明を指定(省略時は'')
    'public'bool管理者またはフロントエンドユーザーが使用できる場合はtrueを指定(省略時はtrue)。
    'publicly_queryable'bool[4.5.0]クエリー可能な場合はtrueを指定(省略時は'public'の値を継承)
    'hierarchical'bool「カテゴリー」のように階層構造の場合はtrueを指定(省略時はfalse)
    'show_ui'bool[4.4.0]管理画面の編集用UIを表示する場合はtrueを指定(省略時は'public'の値を継承)
    'show_in_menu'bool管理画面に編集用UIのメニューを表示する場合は'show_ui'の値と共にtrueを指定(省略時は'show_ui'の値を継承)
    'show_in_nav_menus'boolナビゲーションメニューに表示する場合はtrueを指定(省略時は'public'の値を継承)
    'show_tagcloud'boolタグクラウドウィジェットに含める場合はtrueを指定(省略時は'show_ui'の値を継承)
    'show_in_quick_edit'bool[4.2.0]クイック編集パネルに編集用UIを含める場合はtrueを指定(省略時は'show_ui'の値を継承)
    'show_admin_column'bool投稿一覧のカラムに表示する場合はtrueを指定(省略時はfalse)
    'meta_box_cb'bool|callableメタボックス表示用のコールバック関数を指定
    'meta_box_sanitize_cb'callable[5.1.0]メタボックスから保存されるデータをサニタイズするためのコールバック関数を指定
    'capabilities'string[]タクソノミーのケイパビリティ(権限)を指定
    'rewrite'bool|arrayリライト設定を指定(省略時はtrue)
    'query_var'bool|stringURLクエリーのキー名を指定
    'update_count_callback'callableカウントが更新された時に呼び出されるコールバック関数を指定
    'show_in_rest'bool[4.7.0]REST APIに含める場合はtrueを指定
    'rest_base'string[4.7.0]REST APIルートのベースURLを指定
    'rest_controller_class'string[4.7.0]REST API コントローラのクラス名を指定(省略時は'WP_REST_Terms_Controller')
    'default_term'string|array[5.5.0]デフォルトのターム値を指定
    'sort'boolwp_set_object_terms関数で指定した順にソートする場合はtrueを指定
    'args'arraywp_get_object_terms関数の第3パラメータに内部で適用される内容を指定
    '_builtin'bool標準で組み込まれる場合はtrueを指定(省略時はfalse)

返り値

[5.4.0]タクソノミーを登録できた場合はそのタクソノミー情報(オブジェクト)を、登録できなかった場合はWP_Errorオブジェクトを返す。

注意

本関数はinitアクションより前に使用してはならない。

'labels'に指定する連想配列は、バージョンアップにより何度か拡張されており、最新はget_taxonomy_labels関数を参照すること。

キー投稿タグの内容(hierarchical:false)カテゴリーの内容(hierarchical:true)
'name''Tags'
'タグ'
'Categories'
'カテゴリー'
'singular_name''Tag'
'タグ'
'Category'
'カテゴリー'
'search_items''Search Tags'
'タグを検索'
'Search Categories'
'カテゴリーを検索'
'popular_items''Popular Tags'
'人気のタグ'
null
'all_items''All Tags'
'すべてのタグ'
'All Categories'
'カテゴリー一覧'
'parent_item'null'Parent Category'
'親カテゴリー'
'parent_item_colon'null'Parent Category:'
'親カテゴリー:'
'edit_item''Edit Tag'
'タグを編集'
'Edit Category'
'カテゴリーを編集'
'view_item''View Tag'
'タグを表示'
'View Category'
'カテゴリーを表示'
'update_item''Update Tag'
'タグを更新'
'Update Category'
'カテゴリーを更新'
'add_new_item''Add New Tag'
'新規タグを追加'
'Add New Category'
'新規カテゴリーを追加'
'new_item_name''New Tag Name'
'新規タグ名'
'New Category Name'
'新規カテゴリー名'
'separate_items_with_commas''Separate tags with commas'
'タグが複数ある場合はコンマで区切ってください'
null
'add_or_remove_items''Add or remove tags'
'タグの追加もしくは削除'
null
'choose_from_most_used''Choose from the most used tags'
'よく使われているタグから選択'
null
'not_found''No tags found.'
'タグが見つかりませんでした。'
'No categories found.'
'カテゴリーが見つかりませんでした。'
'no_terms''No tags'
'タグなし'
'No categories'
'カテゴリーなし'
'filter_by_item'null'Filter by category'
'カテゴリーで絞り込む'
'items_list_navigation''Tags list navigation'
'タグリストナビゲーション'
'Categories list navigation'
'カテゴリーリストナビゲーション'
'items_list''Tags list'
'タグリスト'
'Categories list'
'カテゴリーリスト'
'most_used''Most Used'
'よく使うもの'
'Most Used'
'よく使うもの'
'back_to_items''← Go to Tags'
'← タグへ戻る'
'← Go to Categories'
'← カテゴリーへ移動'
'item_link''Tag Link'
'タグリンク'
'Category Link'
'カテゴリーリンク'
'item_link_description''A link to a tag.'
'タグへのリンク。'
'A link to a category.'
'カテゴリーへのリンク。'

'public'の内容は、'publicly_queryable'、'show_ui'、'show_in_nav_menus'キーが省略された場合のデフォルト値となる。'show_ui'の内容は、'show_in_menu'、'show_tagcloud'、'show_in_quick_edit'キーが省略された場合のデフォルト値となる。

'meta_box_cb'の内容が省略された場合は、'hierarchical'の内容により「カテゴリー」か「投稿タグ」のコールバック関数が適用される。メタボックスを表示しない場合は、明示的にfalseを指定する。

ブロックエディターでこのタクソノミーを使用する場合、'show_in_rest'にtrueを指定しなければならない。

'query_var'の内容が文字列の場合、それがURLクエリーのキー名となる。省略時は、本関数の第1パラメータ$taxonomyが適用される。falseの場合はこのタクソノミーのURLクエリーが無効となる。

'capabilities'の内容として指定する連想配列は次の通り。

キー内容
'manage_terms'文字列タームを管理できる権限(省略時は'manage_categories')
'edit_terms'文字列タームを編集できる権限(省略時は'manage_categories')
'delete_terms'文字列タームを削除できる権限(省略時は'manage_categories')
'assign_terms'文字列タームをアサインできる権限(省略時は'edit_posts')

'rewrite'の内容としてtrueを指定した場合は、パラメータ$taxonomyをスラッグとしてリライト設定を行う。falseを指定した場合はリライト設定を行わない。詳細なリライト設定を行う場合は次に示す連想配列を指定する。

キー内容
'slug'文字列パーマストラクチャのスラッグ(省略時はパラメータ$taxonomy
'with_front'boolWP_Rewriteの$frontをパーマストラクチャの前につける場合はtrue(省略時はtrue)
'hierarchical'bool階層型の場合はtrue(省略時はfalse)
'ep_mask'整数エンドポイントマスク(省略時はEP_NONE)

[5.5.0]'default_term'の内容には、タームの名前か、次に示す連想配列を指定する。

キー内容
'name'文字列タームの名前
'slug'文字列タームのスラッグ(省略時は'')
'description'文字列タームの説明(省略時は'')

使用例

  • タクソノミー'people'を登録する
    function register_taxonomy_people() {
    	register_taxonomy(
    		'people',
    		'post',
    		array(
    			'labels'            => array(
    				'name'          => __( 'People' ),
    			),
    			'rewrite'           => array( 'slug' => 'person' ),
    			'hierarchical'      => true,
    			'query_var'         => 'person',
    			'public'            => true,
    			'show_ui'           => true,
    			'show_admin_column' => true,
    		)
    	);
    }
    
    add_action( 'init', 'register_taxonomy_people' );
    

フィルター

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

アクション

[3.3.0]タクソノミー情報(オブジェクト)を返す前に'registered_taxonomy'アクションを呼び出す。パラメータ$taxonomy$object_typeには本関数が受け取った内容が、$argsにはタクソノミー情報を配列でキャストした内容が格納されている。
do_action( 'registered_taxonomy', $taxonomy, $object_type, $args );
[6.0.0]'registered_taxonomy'アクションの後に"registered_taxonomy_{$taxonomy}"アクションを呼び出す。パラメータ$taxonomy$object_typeには本関数が受け取った内容が、$argsにはタクソノミー情報を配列でキャストした内容が格納されている。
do_action( "registered_taxonomy_{$taxonomy}", $taxonomy, $object_type, $args );

ソースファイル

/wp-includes/taxonomy.php

最終更新 : 2022年06月01日 12:49



お勧め

5.7の新機能:AJAXでパスワードを取得(2021年2月17日 更新)

日本時間の今朝「WordPress 5.7 Beta 3(以降Beta 3)」が予定通り公開されました。今回は、ソースコードを眺めていた時に気になったパスワードを取得できるAJAXについて確認した。

5.4.1でパーマリンクの仕様が一部変更された件(2020年5月12日 更新)

先月末にリリースされたバージョン5.4.1のアップデートにより、一部のサイトで投稿ページが従来通りに表示されなくなる不具合が発生し、サポートサイトにレポートが上がりました。この件について、ちょっとモヤモヤしたので自分なりに考えてみました。

使っていないか確認しないとね!(2022年6月7日 更新)

2003年に誕生したWordPress。その歴史の中には、廃止予定(deprecated)となっている関数がいくつも存在する。それらの関数をテーマやプラグインで使用するべきではないし、使用しているなら代替の関数に書き換えるべきである。ここでは3.25.9.0現在、廃止予定となっている関数をまとめて紹介する。

HTML編集モードに定型文ボタンを追加する(2011年6月1日 更新)

投稿編集ページにはビジュアル編集モードとHTML編集モードがあり、それらを拡張するプラグインも多数存在している。そういったプラグインを利用するのもいいのだが、仕組みを理解するのも悪くないはず。というわけで、ここではHTML編集モードのボタンの仕組みと定型文を挿入するボタンを追加する方法を紹介する。

テーブルの1列目をth要素にしてみる(2021年12月21日 更新)

標準の「テーブル」ブロックでは、tbody要素内のセルはすべてtd要素になっている。テーブルの1列目についてはth要素を使いたいケースがあり、「トグル」コントロールを使って切り替え可能にできないか調べてみた。