add_settings_field

説明

void add_settings_field( string $id, string $title, callable $callback, string $page [ , string $section = 'default' [ , array $args = array() ] ] )
設定ページに新しいフィールド(入力要素)を追加する。

パラメータ

  • $id
    フィールドのスラッグを指定。
  • $title
    フィールド名を指定。
  • $callback
    フィールド名の入力要素を出力するコールバック関数を指定。
  • $page
    設定ページのスラッグ('general'、'reading'、'writing'、'discussion'、'media'など)を指定。
  • $section
    セクションのスラッグを指定(省略時は'default')。
  • $args
    フィールド設定に関する内容(label_for、[4.2.0]classキー)を連想配列で指定(省略時はarray())。

返り値

返り値はありません。

注意

設定内容は、グローバル変数$wp_settings_fields[ $page ][ $section ][ $id ]に格納される。

パラメータ$callbackのコールバック関数で出力する入力要素のname属性は register_setting関数で登録したオプション名を指定する必要がある。

[3.0.0]パラメータ$pageが非推奨の'misc'の場合、'general'に変更される。

[3.5.0]パラメータ$pageが非推奨の'privacy'の場合、'reading'に変更される。

[4.2.0]パラメータ$argsにキーclassが追加される。

キー内容省略時
label_forlabel要素のfor属性を指定''
classtr要素のclass属性を指定''

パラメータ$argsにlabel_forキーの値を指定すると、フィールド名はlabel要素で囲まれ、そのfor属性に適用される。label_forキーの値が空の場合はlabel要素で囲まれない。

パラメータ$argsにclassキーの値を指定すると、tr要素のclass属性に適用される。


使用例

  • 一般設定ページに新しいフィールドを追加する
    add_settings_field( 'oauth_client_id', 'Client ID', 'oauth_client_id_field', 'general' );

フィルター

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

アクション

直接実行するアクションはありません。

ソースファイル

/wp-admin/includes/template.php

最終更新 : 2024年01月30日 17:18



お勧め

固定ページを投稿ページ用テンプレートファイル(single.php)で表示する(2013年7月31日 更新)

固定ページと投稿ページのデザインが共通の場合、同じ内容のsingle.phpとpage.phpを用意すれば事足りるが、デザインの修正時は二度手間になってしまう。そこで、固定ページをsingle.phpで表示するようにできないか考えてみた。

親子の固定ページで同じテンプレートを使う(2013年3月20日 更新)

固定ページのテンプレートファイルは「page.php」か、ページ名(スラッグ)または投稿IDを指定したテンプレートファイルになる。固定ページでページデザインが数パターンある場合、通常は「page.php」で振り分けることになるが、もう少しスマートにできないか考えてみた。

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

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

新規投稿時の本文プレースホルダーテキストを変える(2021年9月9日 更新)

ブロックエディターに影響を与えるフィルターは多数存在する。今回紹介するフィルターはその1つで、新規投稿時の本文ブロックのプレースホルダーテキストを変更するものだ。

ログインページのタイトルを変更してみる(2018年5月27日 更新)

バージョン4.9では新しいフィルターやフィルターのパラメータの追加が多数行われている。ここではその一例としてログインページ関連で追加された2つのフィルターを紹介する。