register_field_group()


WordPressの関数register_field_group()は、カスタムフィールドグループを登録するために使用されます。

構文

register_field_group( array $args );
  • $args (array) — フィールドグループの設定を含む連想配列。

フィールドグループの設定例:

  • 'title' (string) — フィールドグループのタイトル。
  • 'fields' (array) — カスタムフィールドの設定。
  • 'location' (array) — フィールドグループを表示する場所。
  • 'active' (boolean) — フィールドグループがアクティブかどうか。

例1: 基本的なフィールドグループの登録

基本的なフィールドグループを投稿タイプ「post」に登録します。

<?php
register_field_group(array(
  'title' => 'カスタムフィールドグループ',
  'fields' => array(
    array(
      'key' => 'field_1',
      'label' => 'カスタムフィールド',
      'name' => 'custom_field',
      'type' => 'text',
    ),
  ),
  'location' => array(
    array(
      array(
        'param' => 'post_type',
        'operator' => '==',
        'value' => 'post',
      ),
    ),
  ),
));
?>

例2: 複数のフィールドを含むフィールドグループ

フィールドグループに複数のカスタムフィールドを追加する例です。

<?php
register_field_group(array(
  'title' => '複数フィールドグループ',
  'fields' => array(
    array(
      'key' => 'field_1',
      'label' => 'フィールド1',
      'name' => 'field_1',
      'type' => 'text',
    ),
    array(
      'key' => 'field_2',
      'label' => 'フィールド2',
      'name' => 'field_2',
      'type' => 'textarea',
    ),
  ),
  'location' => array(
    array(
      array(
        'param' => 'post_type',
        'operator' => '==',
        'value' => 'page',
      ),
    ),
  ),
));
?>

例3: フィールドグループをタクソノミーに登録

タクソノミー「category」にカスタムフィールドグループを追加します。

<?php
register_field_group(array(
  'title' => 'カテゴリーカスタムフィールド',
  'fields' => array(
    array(
      'key' => 'field_1',
      'label' => 'カテゴリー詳細',
      'name' => 'category_detail',
      'type' => 'text',
    ),
  ),
  'location' => array(
    array(
      array(
        'param' => 'taxonomy',
        'operator' => '==',
        'value' => 'category',
      ),
    ),
  ),
));
?>

例4: 非表示のフィールドグループを登録

非表示のフィールドグループを登録する例です。

<?php
register_field_group(array(
  'title' => '非表示フィールドグループ',
  'fields' => array(
    array(
      'key' => 'field_1',
      'label' => '非表示フィールド',
      'name' => 'hidden_field',
      'type' => 'text',
    ),
  ),
  'location' => array(
    array(
      array(
        'param' => 'post_type',
        'operator' => '==',
        'value' => 'post',
      ),
    ),
  ),
  'active' => false,
));
?>

例5: フィールドグループに選択肢を追加

選択肢フィールドを持つフィールドグループを作成する例です。

<?php
register_field_group(array(
  'title' => '選択肢フィールドグループ',
  'fields' => array(
    array(
      'key' => 'field_1',
      'label' => '選択肢',
      'name' => 'choice_field',
      'type' => 'select',
      'choices' => array(
        '選択肢1' => '選択肢1',
        '選択肢2' => '選択肢2',
        '選択肢3' => '選択肢3',
      ),
    ),
  ),
  'location' => array(
    array(
      array(
        'param' => 'post_type',
        'operator' => '==',
        'value' => 'post',
      ),
    ),
  ),
));
?>

警告

  • 'active' => falseを使用する場合、フィールドグループは管理画面に表示されません。
  • フィールドグループが複雑な場合、パフォーマンスに影響を与えることがあります。