ワードプレスのadd_options_page関数の使用方法・解説

概要

add_options_page関数は、WordPressの設定メニューにサブメニューを登録するために使用されます。この関数を利用することで、プラグインやテーマの管理インターフェースを構築することができ、ユーザーが簡単に設定を変更できるようになります。主に以下の機能実装の際に使用されます:

  1. プラグインの設定画面の追加
  2. カスタムオプションの設定・保存
  3. ユーザーインターフェースの強化
  4. 管理パネルのカスタマイズ
  5. APIキーや外部サービスの設定
  6. 管理者向けのヘルプページの提供
  7. SEO設定の管理
  8. ウェブサイトのセキュリティ設定

構文

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

パラメータ

  • $page_title (string): メニューのページ名。
  • $menu_title (string): メニューに表示するタイトル。
  • $capability (string): メニューを表示できるユーザー権限。
  • $menu_slug (string): このメニューのスラッグ(ユニークなID)。
  • $function (callable): メニューが選択されたときに実行する関数。

戻り値

  • 成功時に true、失敗時には false を返します。

関連する関数

使用可能なバージョン

  • この関数は、WordPress 2.7 以降で使用可能です。

コアファイルのパス

  • wp-admin/includes/plugin.php

この関数のアクションでの使用可能性

アクション 使用可否
mu_plugin_loaded
registered_post_type
plugins_loaded
wp_roles_init
setup_theme
after_setup_theme
set_current_user
init
register_sidebar
wp_loaded
send_headers
parse_query
pre_get_posts
wp
template_redirect
get_header
wp_head

サンプルコード

サンプルコード 1: シンプルな設定ページ

このコードは、プラグインの設定ページを追加する基本的な例です。

add_action('admin_menu', 'my_plugin_menu');

function my_plugin_menu() {
    add_options_page('My Plugin Settings', 'My Plugin', 'manage_options', 'my-plugin', 'my_plugin_settings_page');
}

function my_plugin_settings_page() {
    echo '<h1>My Plugin Settings</h1>';
    // 設定フォームなどをここに追加
}

サンプルコード 2: 設定フォームを追加

このコードは、設定フォームを追加する例です。

add_action('admin_menu', 'my_plugin_menu');

function my_plugin_menu() {
    add_options_page('My Plugin Settings', 'My Plugin', 'manage_options', 'my-plugin', 'my_plugin_settings_page');
}

function my_plugin_settings_page() {
    ?>
    <div>
        <h1>My Plugin Settings</h1>
        <form method="post" action="options.php">
            <?php settings_fields('my_plugin_options'); ?>
            <label for="my_option">My Option:</label>
            <input type="text" name="my_option" value="<?php echo get_option('my_option'); ?>" />
            <?php submit_button(); ?>
        </form>
    </div>
    <?php
}

サンプルコード 3: オプションの登録

このコードは、オプションを登録する手順を示しています。

add_action('admin_init', 'my_plugin_settings');

function my_plugin_settings() {
    register_setting('my_plugin_options', 'my_option');
}

add_action('admin_menu', 'my_plugin_menu');

function my_plugin_menu() {
    add_options_page('My Plugin Settings', 'My Plugin', 'manage_options', 'my-plugin', 'my_plugin_settings_page');
}

function my_plugin_settings_page() {
    ?>
    <div>
        <h1>My Plugin Settings</h1>
        <form method="post" action="options.php">
            <?php settings_fields('my_plugin_options'); ?>
            <label for="my_option">My Option:</label>
            <input type="text" name="my_option" value="<?php echo get_option('my_option'); ?>" />
            <?php submit_button(); ?>
        </form>
    </div>
    <?php
}

サンプルコード 4: 権限を変更

このコードは、異なるユーザー権限でメニューを表示する例です。

add_action('admin_menu', 'my_plugin_menu');

function my_plugin_menu() {
    add_options_page('My Plugin Settings', 'My Plugin', 'administrator', 'my-plugin', 'my_plugin_settings_page');
}

function my_plugin_settings_page() {
    echo '<h1>My Plugin Settings</h1>';
    // 設定フォームなどをここに追加
}

サンプルコード 5: カスタムメッセージを表示

このコードは、設定ページにカスタムメッセージを表示する例です。

add_action('admin_menu', 'my_plugin_menu');

function my_plugin_menu() {
    add_options_page('My Plugin Settings', 'My Plugin', 'manage_options', 'my-plugin', 'my_plugin_settings_page');
}

function my_plugin_settings_page() {
    echo '<h1>My Plugin Settings</h1>';
    echo '<p>カスタムメッセージをここに表示できます。</p>';
    // 設定フォームなどをここに追加
}

引用元: 各サンプルコードはオリジナルであり、著作権フリーです。

この関数について質問する


上の計算式の答えを入力してください