add_options_page()


WordPress関数add_options_page()は、管理画面の「設定」メニューにカスタム設定ページを追加するために使用されます。

構文

add_options_page( string $page_title, string $menu_title, string $capability, string $menu_slug, callable $function );

引数の説明:

  • $page_title (string) — 設定ページのタイトル。
  • $menu_title (string) — メニューに表示されるタイトル。
  • $capability (string) — ページへのアクセスに必要な権限。
  • $menu_slug (string) — ページを識別する一意のスラッグ。
  • $function (callable) — ページ内容を出力するコールバック関数。

例1: 基本的な設定ページの追加

このコードは「設定」メニューに基本的なカスタム設定ページを追加します。

add_options_page( '設定ページ', 'カスタム設定', 'manage_options', 'custom-settings', function() { echo 'ここに設定内容を記述します。'; } );

例2: HTMLフォームを含む設定ページの追加

設定ページにHTMLフォームを表示する例です。

add_options_page( 'フォーム設定', 'フォーム', 'manage_options', 'form-settings', function() {
    echo '<form method="post" action="options.php">';
    settings_fields( 'my_option_group' );
    do_settings_sections( 'my_option_group' );
    submit_button();
    echo '</form>';
} );

例3: 特定の権限が必要な設定ページ

特定のユーザーのみがアクセス可能な設定ページを追加します。

add_options_page( '管理者専用', '管理者設定', 'administrator', 'admin-settings', function() {
    echo '管理者専用設定ページです。';
} );

例4: ページ内容を関数で分離する

コールバック関数を別途定義して、ページ内容を分離します。

function custom_settings_page_content() {
    echo 'カスタム設定ページの内容です。';
}
add_options_page( '分離設定', '分離', 'manage_options', 'separated-settings', 'custom_settings_page_content' );

例5: ダイナミックデータを表示する設定ページ

設定ページに動的データを表示する例です。

add_options_page( '動的設定', '動的データ', 'manage_options', 'dynamic-settings', function() {
    echo '現在の日時: ' . date( 'Y-m-d H:i:s' );
} );

注意点

  • 関数add_options_page()を使用するには、ユーザーが適切な権限を持っている必要があります。
  • settings_fields()およびdo_settings_sections()を使用する場合、登録された設定グループを正確に指定する必要があります。

関連機能: