WEB制作のための情報サイト / unazuki Library

register_taxonomy()

基本構文と使い方(引数・実行結果)

基本構文

カスタムタクソノミーを追加します。

register_taxonomy($taxonomy,$object_type,$args);

引数

引数必須/任意引数に指定するもの
第1引数
$taxonomy
必須カスタムタクソノミーの名前を指定(文字列
※32文字まで、小文字英数字、アンダースコア、ダッシュ
第2引数
$object_type
必須紐づけるオブジェクトのスラッグを文字列、あるいはその配列で指定
(カスタム投稿タイプを指定してタクソノミーを紐づけることができます。)
第3引数
$args
任意カスタムタクソノミーの仕様を文字列配列で指定
主なパラメーターは以下の通りです。

description タクソノミーの説明文(文字列)
public カスタム投稿タイプを一般に公開するかどうか(真偽値)
show_in_rest REST APIにタクソノミーを含めるかどうか(真偽値)
hierarchical 階層化するかどうか(真偽値)
query_var クエリパラメーターを使えるようにする(真偽値/文字列)
show_admin_column 管理画面の投稿一覧にタクソノミーを表示するかどうか(真偽値)

すべてのパラメーターの詳細は下記より参照ください(英語)
https://developer.wordpress.org/reference/functions/register_taxonomy/

初期値[](空の配列)

実行結果

戻り値(返す値):登録に成功したカスタムタクソノミーオブジェクト(失敗の場合はエラーオブジェクト)

学習者向け補足情報

【引数とは】
テンプレートタグ(=関数)を実行する際に、引数を渡すことができるテンプレートタグがあります。引数は、関数の中で使われるので、渡す引数の値によって実行結果が変わってきます。何を処理したいのか、どのようなデータを取得したいのかによって渡す引数が変わります。

【引数について】

  • 指定できる引数の数はテンプレートタグによって異なります。(引数なしもあり)
  • 引数ごとに必須 / 任意が決まっています。(必須は必ず指定、任意は指定しなければ初期値)
  • 引数名(例:$post)は仕様の便宜上の名前と考えてください。(この名前自体はテンプレートタグ実行に関係しません。各引数に何を指定するのかを理解していればOKです。)

参考コード

下記のコード例では、カスタム投稿タイプ「seminar」にカスタムタクソノミー「分野」を追加しています。

function tax_register_field_seminar() {
	$args = [
		'label' => '分野',
		'labels' => [
			'singular_name' => '分野',
			'edit_item' => '分野を編集',
			'add_new_item' => '新規分野を追加'
		],
		'show_admin_column' => true,
		'hierarchical' => true,
		'query_var' => true,
		'show_in_rest' => true
	];
	register_taxonomy('field', 'seminar', $args);
}
add_action('init', 'tax_register_field_seminar');

※当サイトでは初期値とデフォルト値の言葉の定義を区別せず、原則統一して初期値を採用しています。

関連するテンプレートタグ

テンプレートタグ 説明
dynamic_sidebar() サイドバー(ウィジェットを配置するエリア)を表示する。
register_sidebar() ウィジェットを配置するためのエリアを登録する。
register_post_type() カスタム投稿タイプを登録する。
wp_enqueue_script() スクリプトを登録し、読み込み対象としてキューに追加します。
wp_enqueue_style() スタイルシートを登録し、読み込み対象としてキューに追加します。
add_editor_style() 編集画面でエディタ用のスタイルシートを読み込む。
add_theme_support() 指定した機能をテーマに追加する。