• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

「関数リファレンス/add menu page」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(未翻訳部分の和訳)
(クリーンアップ。)
 
1行目: 1行目:
 
{{NeedTrans|一部}}
 
{{NeedTrans|一部}}
  
== 説明 ==
+
== 説明<span id="Description"></span> ==
  
トップレベルメニューの追加。
+
トップレベルのメニューページを追加します。
  
具体的には、管理者メニューのサイドバーに新しいトップレベルのメニューのセクションを作成し、リンクされたメニューのページが要求されたときにページの内容を出力するための関数をコールバックしフックを登録します。
+
具体的には、管理者メニューのサイドバーに新しいトップレベルのメニューのセクションを作成します。リンクされたメニューのページが要求されたとき、ページの内容を出力するための関数をコールバックしますが、指定された関数をそれ専用のフック(アクション)に登録します。そしてフック名を返します。
<tt>$hookname</tt>を返します。
+
 
 +
== 使い方<span id="Usage"></span> ==
  
== 使い方 ==
 
 
<pre>
 
<pre>
<?php add_menu_page( $page_title, $menu_title, $capability, $menu_slug, $function, $icon_url, $position ); ?>
+
<?php add_menu_page( $page_title, $menu_title, $capability, $menu_slug, $function, $icon_url, $position ); ?>
 
</pre>
 
</pre>
  
== パラメータ ==
+
== パラメータ<span id="Parameters"></span> ==
  
{{Parameter|$page_title|文字列|メニューが選択されたときにページのタイトルタグに表示されるテキスト}}
+
{{Parameter|$page_title|文字列|メニューが選択されたとき、ページのタイトルタグに表示されるテキスト。}}
  
{{Parameter|$menu_title|文字列|メニューに表示されるテキスト}}
+
{{Parameter|$menu_title|文字列|メニューとして表示されるテキスト}}
  
{{Parameter|$capability|文字列|メニューを表示するために必要な[[Roles and Capabilities|権限]]。[[User Levels|ユーザーレベル]]は非推奨となっており、ここでは使用すべきではありません。}}
+
{{Parameter|$capability|文字列|メニューを表示するために必要な[[Roles and Capabilities|権限]]。'''注:'''[[User Levels|ユーザーレベル]]は非推奨ですので使用しないでください。}}
  
{{Parameter|$menu_slug|文字列|メニューのスラッグ名(一意である必要があります)。
+
{{Parameter|$menu_slug|文字列|メニューのスラッグ名。一意であり、小文字の英数字、ダッシュ、下線のみを含む必要があります。これは [[関数リファレンス/sanitize_key|sanitize_key()]] /[[:en:Function Reference/sanitize_key|en]] と互換の文字セットです。}}
:[[Version 3.0]]以前は file (or handle) パラメータと呼ばれていました。
+
:[[Version 3.0|バージョン 3.0]]以前はファイル(またはハンドル)パラメータと呼ばれていました。
:''function''パラメータパラメータが省略された場合、''menu_slug''はメニューページを表示するPHPファイルまたはハンドルである必要があります。}}
+
:''$function'' パラメータを省略した場合、''$menu_slug'' はメニューページを表示する PHP ファイルのパス名またはハンドルである必要があります。
  
{{Parameter|$function|文字列|メニューページを表示する際に実行される関数|オプション|''なし''.}}  
+
{{Parameter|$function|文字列|メニューページを表示する際に実行される関数|オプション|<tt><nowiki>''</nowiki></tt>}}
:''function''パラメータはオプションです。パラメータが指定されていない場合、WordPressはインクルードされるPHPファイルが関数を呼び出すことなく管理画面を生成することを前提としています。 ほとんどのプラグイン作者はプラグインファイル内の関数でページを生成しています。
+
:''$function'' パラメータを省略した場合、WordPress はインクルードされる PHP ファイルが関数を呼び出すことなく管理画面を生成することを前提とします。ほとんどのプラグイン作者はプラグインファイル内の関数でページを生成しています。
:このパラメータが指定された場合、''menu_slug''パラメータは任意の文字列を使用することが可能となります。これは''?page=my-super-plugin/admin-options.php''の代わりに''?page=my_super_plugin_page''のようなページの使用が可能になります。
+
:このパラメータを指定した場合、''$menu_slug'' パラメータは任意の文字列を使用できます。これにより <code>?page=my-super-plugin/admin-options.php</code> の代わりに <code>?page=my_super_plugin_page</code> のような URL を実現できます。
 
:関数は次のいずれかの方法で参照する必要があります:
 
:関数は次のいずれかの方法で参照する必要があります:
:# プラグイン内でクラスのメンバとして使用する場合は、<tt>array( $this, 'function_name' )</tt>と参照する必要があります。
+
:# プラグイン内でクラスのメンバとして定義した場合は、<code>array( $this, '関数名' )</code>
:# 他のケースでは、関数名自体を使用すれば十分です。
+
:# 他の場合は、関数名だけを記述すれば充分です。
  
{{Parameter|$icon_url|文字列|メニューのアイコン|オプション|空の文字列}}
+
{{Parameter|$icon_url|文字列|メニューのアイコンを示す URL|オプション|<tt><nowiki>''</nowiki></tt>}}
:* カスタムイメージを使用する場合、<tt>plugin_dir_url( __FILE__ )</tt>関数を使用して取得したプラグインディレクトリにイメージファイル名を追加し、指定することができます。
+
:* カスタムイメージを使用する場合、<tt>plugin_dir_url( __FILE__ )</tt> 関数を使用して取得したプラグインディレクトリにイメージファイル名を追加し、指定することができます。アイコンは20×20ピクセル以下でなければなりません。
:アイコンは20×20ピクセル以下でなければなりません。
+
:* (WP 3.8+) <tt>'dashicons-...'</tt> の場合、https://developer.wordpress.org/resource/dashicons/ にまとめられている「ダッシュアイコン」が表示されます。例えばデフォルトの「歯車」のシンボルは <tt>'dashicons-admin-generic'</tt> と明示的に指定できます。
:* (WP 3.8+) 'dashicons-...'の場合、https://developer.wordpress.org/resource/dashicons/ から収集された [[Dashicon]] が表示されます。例えば、デフォルトの「歯車」のシンボルは 'dashicons-admin-generic' と明示的に指定することができます。
+
:* (WP 3.8+) <tt>'data:image/svg+xml;base64,...'</tt> の場合、CSS background として、指定された SVG データ画像が使用されます。
:* (WP 3.8+) 'data:image/svg+xml;base64...'の場合、CSS background として、指定されたSVGデータ画像が使用されます。
+
:* <tt>'none'</tt> (以前は <tt>'div'</tt>)の場合、アイコンは、CSS でスタイル可能な空白の <tt>div</tt> と入れ替えられます。
:* 'none' (以前は 'div')の場合、アイコンは、CSSでスタイル可能な空白の div と入れ替えられます。
+
:* <tt><nowiki>''</nowiki></tt> (デフォルト)の場合、歯車ダッシュアイコンが表示されます。 (そして、<tt>menu-icon-generic</tt> がリンクの CSS クラスに追加されます。)
:* <nowiki>''</nowiki> (デフォルト)の場合、歯車 [[Dashicon]] が表示されます。 (そして、<tt>menu-icon-generic</tt> がリンクのCSSクラスに追加されます。)
+
  
 
{{Parameter|$position|整数|メニューが表示される位置。省略時はメニュー構造の最下部に表示されます。大きい数値ほど下に表示されます。
 
{{Parameter|$position|整数|メニューが表示される位置。省略時はメニュー構造の最下部に表示されます。大きい数値ほど下に表示されます。
 
:'''注意''': 2つのメニューが同じ位置を指定している場合、片方のみ表示され上書きされる可能性があります。衝突のリスクは整数値でなく小数値を使用することで回避することができます。
 
:'''注意''': 2つのメニューが同じ位置を指定している場合、片方のみ表示され上書きされる可能性があります。衝突のリスクは整数値でなく小数値を使用することで回避することができます。
:'''例''': 63の代わりに63.3(コード内ではクォートを使用('63.3')) |オプション|メニュー構造の最下部}}
+
:'''例''': 63の代わりに63.3(コード内ではクォートを使用。例えば <tt>'63.3'</tt>)|オプション|メニュー構造の最下部}}
 
:* 2  - ダッシュボード
 
:* 2  - ダッシュボード
:* 4  - (セパレーター)
+
:* 4  - (セパレータ)
 
:* 5  - 投稿
 
:* 5  - 投稿
 
:* 10 - メディア
 
:* 10 - メディア
50行目: 49行目:
 
:* 20 - 固定ページ
 
:* 20 - 固定ページ
 
:* 25 - コメント
 
:* 25 - コメント
:* 59 - (セパレーター)
+
:* 59 - (セパレータ)
 
:* 60 - 外観(テーマ)
 
:* 60 - 外観(テーマ)
 
:* 65 - プラグイン
 
:* 65 - プラグイン
56行目: 55行目:
 
:* 75 - ツール
 
:* 75 - ツール
 
:* 80 - 設定
 
:* 80 - 設定
:* 99 - (セパレーター)
+
:* 99 - (セパレータ)
  
ネットワーク管理者メニューでは、値が異なります。:
+
ネットワーク管理者メニューでは、値が異なります:
  
 
:* 2 - ダッシュボード
 
:* 2 - ダッシュボード
:* 4 - (セパレーター)
+
:* 4 - (セパレータ)
 
:* 5 - 参加サイト
 
:* 5 - 参加サイト
 
:* 10 - ユーザー
 
:* 10 - ユーザー
68行目: 67行目:
 
:* 25 - 設定
 
:* 25 - 設定
 
:* 30 - 更新
 
:* 30 - 更新
:* 99 - (セパレーター)
+
:* 99 - (セパレータ)
  
==戻り値==
+
== 戻り値<span id="Return_Values"></span> ==
; <tt>文字列</tt> : グローバルな <tt>$menu</tt> 配列内でページを出力するためのメニューページコールバックの追跡に内部的に使われる$hookname
+
  
== 用例 ==
+
; <tt>文字列</tt> : メニューページを出力する関数をコールバックするためのフック(アクション)名。フック名はメニュー自体と共に、グローバルな <tt>$menu</tt> 配列へ保存されます。
管理者権限ユーザー向けに、WordPressの管理メニューにカスタムメニュー項目を追加します。
+
 
 +
== 用例<span id="Examples"></span> ==
 +
 
 +
管理者権限ユーザー向けに、WordPress の管理メニューにカスタムメニュー項目を追加します。
  
 
例 1:
 
例 1:
 
<pre>
 
<pre>
add_action( 'admin_menu', 'register_my_custom_menu_page' );
+
/**
 
+
* Register a custom menu page.
function register_my_custom_menu_page() {
+
*/
 
+
function wpdocs_register_my_custom_menu_page() {
add_menu_page( 'custom menu title', 'custom menu', 'manage_options', 'myplugin/myplugin-admin.php', '', plugins_url( 'myplugin/images/icon.png' ), 6 );
+
    add_menu_page(
 
+
        __( 'Custom Menu Title', 'textdomain' ),
 +
        'custom menu',
 +
        'manage_options',
 +
        'myplugin/myplugin-admin.php',
 +
        '',
 +
        plugins_url( 'myplugin/images/icon.png' ),
 +
        6
 +
    );
 
}
 
}
 +
add_action( 'admin_menu', 'wpdocs_register_my_custom_menu_page' );
 
</pre>
 
</pre>
このメソッドの場合、ページを生成するコードは myplugin/myplugin-admin.php に置かれている必要があります:
+
この方法では、ページを生成するコードを myplugin/myplugin-admin.php に書いておく必要があります:
 
<pre>
 
<pre>
<?php echo "Admin Page Test"; ?>
+
<?php esc_html_e( 'Admin Page Test', 'textdomain' ); ?>
 
</pre>
 
</pre>
  
 
例 2:
 
例 2:
 
<pre>
 
<pre>
add_action( 'admin_menu', 'register_my_custom_menu_page' );
+
/**
 
+
* Register a custom menu page.
function register_my_custom_menu_page(){
+
*/
add_menu_page( 'custom menu title', 'custom menu', 'manage_options', 'custompage', 'my_custom_menu_page', plugins_url( 'myplugin/images/icon.png' ), 6 );  
+
function wpdocs_register_my_custom_menu_page(){
 +
    add_menu_page(
 +
        __( 'Custom Menu Title', 'textdomain' ),
 +
        'custom menu',
 +
        'manage_options',
 +
        'custompage',
 +
        'my_custom_menu_page',
 +
        plugins_url( 'myplugin/images/icon.png' ),
 +
        6
 +
    );  
 
}
 
}
 
+
add_action( 'admin_menu', 'wpdocs_register_my_custom_menu_page' );
 +
 +
/**
 +
* Display a custom menu page
 +
*/
 
function my_custom_menu_page(){
 
function my_custom_menu_page(){
echo "Admin Page Test";
+
    esc_html_e( 'Admin Page Test', 'textdomain' );
 
}
 
}
 
</pre>
 
</pre>
  
== ==
+
== 参考<span id="Notes"></span> ==
 +
 
 +
* '''重要:''' WordPress 4.4 から、衝突を避けるために <tt>$position</tt> をユニークに保つ心配は不要になりました。詳しくは [https://core.trac.wordpress.org/ticket/23316 #23316] を見てください。
  
* もし「このページにアクセスする権限がありません」エラーに出くわした場合、フックするのが早すぎるといことです。使用すべきフックは <tt>admin_menu</tt> です。
+
* もし「このページにアクセスする権限がありません」エラーに出くわした場合、フックするのが早すぎるということです。使用すべきフックは <tt>admin_menu</tt> です。
  
 
* もし既存の管理者メニューのアイテムを別の場所に移動させたいだけの場合、<tt>admin_menu</tt> フックを使ってグローバルな <tt>$menu</tt> と <tt>$submenu</tt> 変数(両方とも配列)内の現在の位置からメニューのアイテムを取り除き、配列の他の場所に設置することができます。
 
* もし既存の管理者メニューのアイテムを別の場所に移動させたいだけの場合、<tt>admin_menu</tt> フックを使ってグローバルな <tt>$menu</tt> と <tt>$submenu</tt> 変数(両方とも配列)内の現在の位置からメニューのアイテムを取り除き、配列の他の場所に設置することができます。
  
* この関数は「権限」([[Roles and Capabilities]] 参照)を使用して、メニューにページが含まれるかどうかを決定しています。ページの出力を取り扱うためにフックされた関数も、ユーザーが要求される「権限」を持っているかどうかを検証しなければなりません。
+
* この関数は「権限」([[Roles and Capabilities]] 参照)を使用して、メニューにページが含まれるかどうかを決定しています。同様に、ページの出力を取り扱うためにフックされた関数も、要求される「権限」をユーザーが持っていることを検証しなければなりません。
  
* [[Settings API]] を使ってデータを保存していて、ユーザーが管理者以外である必要がある場合、<tt>$option_group</tt> が <tt>[[関数リファレンス/register_setting()|register_setting()]] /[[:en:Function_Reference/register_setting()|en]]</tt> 内の <tt>option_group</tt> と同じである <tt>option_page_capability_{$option_group}</tt> フックを通じて権限の修正をする必要があります。[[Settings API]] を参照してください。.  
+
* [[Settings API]] を使ってデータを保存していて、ユーザーが管理者以外である必要がある場合、<tt>$option_group</tt> が <tt>[[関数リファレンス/register_setting|register_setting()]]</tt> 内の <tt>$option_group</tt> と同じである <tt>option_page_capability_{$option_group}</tt> フックを通じて権限を修正する必要があります。[[Settings API]] を参照してください。.  
  
 
編集者にデータを保存させる例:
 
編集者にデータを保存させる例:
130行目: 154行目:
 
</pre>
 
</pre>
  
== 更新履歴 ==
+
== 変更履歴<span id="Change_Log"></span> ==
  
  
== ソースファイル ==
+
== ソースファイル<span id="Source_File"></span> ==
  
<tt>add_menu_page()</tt>は {{Trac|wp-admin/includes/plugin.php}}にあります。
+
<tt>add_menu_page()</tt>は {{Trac|wp-admin/includes/plugin.php}} にあります。
  
 
+
== 外部リソース ==
== 外部リソース==
+
  
 
* [http://log.noiretaya.com/206 http://log.noiretaya.com/206 http://log.noiretaya.com/206 http://log.noiretaya.com/206] WordPress 管理画面にメニュー項目を追加する
 
* [http://log.noiretaya.com/206 http://log.noiretaya.com/206 http://log.noiretaya.com/206 http://log.noiretaya.com/206] WordPress 管理画面にメニュー項目を追加する
 
* [http://gatespace.jp/2013/12/19/wordpress-3-8-dashboard-icon/ http://gatespace.jp/2013/12/19/wordpress-3-8-dashboard-icon/]WordPress 3.8 テーマやプラグインでダッシュボードメニューのアイコンを設定する方法
 
* [http://gatespace.jp/2013/12/19/wordpress-3-8-dashboard-icon/ http://gatespace.jp/2013/12/19/wordpress-3-8-dashboard-icon/]WordPress 3.8 テーマやプラグインでダッシュボードメニューのアイコンを設定する方法
  
 
+
== 関連項目<span id="Related"></span> ==
 
+
 
+
== 関連 ==
+
  
 
[[管理メニューの追加]]
 
[[管理メニューの追加]]
  
 
{{Admin Menu Tags}}
 
{{Admin Menu Tags}}
 
 
{{Tag Footer}}
 
{{Tag Footer}}
  
 +
<!-- {{原文|Function Reference/add_menu_page|152665}} 19:16, 21 July 2015 Morganestes 版 -->
 +
最新英語版: [https://developer.wordpress.org/reference/functions/add_menu_page/ Reference / Functions / add_menu_page()]
  
{{原文|Function Reference/add_menu_page|152665}}<!-- 19:16, 21 July 2015‎ Morganestes  版 -->
+
{{DEFAULTSORT:Add_menu_page}}
 
+
 
[[Category:関数]]
 
[[Category:関数]]

2018年9月26日 (水) 00:48時点における最新版

このページ「関数リファレンス/add menu page」は一部未翻訳です。和訳や日本語情報を加筆してくださる協力者を求めています

説明

トップレベルのメニューページを追加します。

具体的には、管理者メニューのサイドバーに新しいトップレベルのメニューのセクションを作成します。リンクされたメニューのページが要求されたとき、ページの内容を出力するための関数をコールバックしますが、指定された関数をそれ専用のフック(アクション)に登録します。そしてフック名を返します。

使い方

<?php add_menu_page( $page_title, $menu_title, $capability, $menu_slug, $function, $icon_url, $position ); ?>

パラメータ

$page_title
文字列) (必須) メニューが選択されたとき、ページのタイトルタグに表示されるテキスト。
初期値: なし
$menu_title
文字列) (必須) メニューとして表示されるテキスト
初期値: なし
$capability
文字列) (必須) メニューを表示するために必要な権限注:ユーザーレベルは非推奨ですので使用しないでください。
初期値: なし
$menu_slug
文字列) (必須) メニューのスラッグ名。一意であり、小文字の英数字、ダッシュ、下線のみを含む必要があります。これは sanitize_key() /en と互換の文字セットです。
初期値: なし
バージョン 3.0以前はファイル(またはハンドル)パラメータと呼ばれていました。
$function パラメータを省略した場合、$menu_slug はメニューページを表示する PHP ファイルのパス名またはハンドルである必要があります。
$function
文字列) (オプション) メニューページを表示する際に実行される関数
初期値: ''
$function パラメータを省略した場合、WordPress はインクルードされる PHP ファイルが関数を呼び出すことなく管理画面を生成することを前提とします。ほとんどのプラグイン作者はプラグインファイル内の関数でページを生成しています。
このパラメータを指定した場合、$menu_slug パラメータは任意の文字列を使用できます。これにより ?page=my-super-plugin/admin-options.php の代わりに ?page=my_super_plugin_page のような URL を実現できます。
関数は次のいずれかの方法で参照する必要があります:
  1. プラグイン内でクラスのメンバとして定義した場合は、array( $this, '関数名' )
  2. 他の場合は、関数名だけを記述すれば充分です。
$icon_url
文字列) (オプション) メニューのアイコンを示す URL
初期値: ''
  • カスタムイメージを使用する場合、plugin_dir_url( __FILE__ ) 関数を使用して取得したプラグインディレクトリにイメージファイル名を追加し、指定することができます。アイコンは20×20ピクセル以下でなければなりません。
  • (WP 3.8+) 'dashicons-...' の場合、https://developer.wordpress.org/resource/dashicons/ にまとめられている「ダッシュアイコン」が表示されます。例えばデフォルトの「歯車」のシンボルは 'dashicons-admin-generic' と明示的に指定できます。
  • (WP 3.8+) 'data:image/svg+xml;base64,...' の場合、CSS background として、指定された SVG データ画像が使用されます。
  • 'none' (以前は 'div')の場合、アイコンは、CSS でスタイル可能な空白の div と入れ替えられます。
  • '' (デフォルト)の場合、歯車ダッシュアイコンが表示されます。 (そして、menu-icon-generic がリンクの CSS クラスに追加されます。)
$position
整数) (オプション) メニューが表示される位置。省略時はメニュー構造の最下部に表示されます。大きい数値ほど下に表示されます。
注意: 2つのメニューが同じ位置を指定している場合、片方のみ表示され上書きされる可能性があります。衝突のリスクは整数値でなく小数値を使用することで回避することができます。
: 63の代わりに63.3(コード内ではクォートを使用。例えば '63.3'
初期値: メニュー構造の最下部
  • 2 - ダッシュボード
  • 4 - (セパレータ)
  • 5 - 投稿
  • 10 - メディア
  • 15 - リンク
  • 20 - 固定ページ
  • 25 - コメント
  • 59 - (セパレータ)
  • 60 - 外観(テーマ)
  • 65 - プラグイン
  • 70 - ユーザー
  • 75 - ツール
  • 80 - 設定
  • 99 - (セパレータ)

ネットワーク管理者メニューでは、値が異なります:

  • 2 - ダッシュボード
  • 4 - (セパレータ)
  • 5 - 参加サイト
  • 10 - ユーザー
  • 15 - テーマ
  • 20 - プラグイン
  • 25 - 設定
  • 30 - 更新
  • 99 - (セパレータ)

戻り値

文字列 
メニューページを出力する関数をコールバックするためのフック(アクション)名。フック名はメニュー自体と共に、グローバルな $menu 配列へ保存されます。

用例

管理者権限ユーザー向けに、WordPress の管理メニューにカスタムメニュー項目を追加します。

例 1:

/**
 * Register a custom menu page.
 */
function wpdocs_register_my_custom_menu_page() {
    add_menu_page(
        __( 'Custom Menu Title', 'textdomain' ),
        'custom menu',
        'manage_options',
        'myplugin/myplugin-admin.php',
        '',
        plugins_url( 'myplugin/images/icon.png' ),
        6
    );
}
add_action( 'admin_menu', 'wpdocs_register_my_custom_menu_page' );

この方法では、ページを生成するコードを myplugin/myplugin-admin.php に書いておく必要があります:

<?php esc_html_e( 'Admin Page Test', 'textdomain' ); ?>

例 2:

/**
 * Register a custom menu page.
 */
function wpdocs_register_my_custom_menu_page(){
    add_menu_page( 
        __( 'Custom Menu Title', 'textdomain' ),
        'custom menu',
        'manage_options',
        'custompage',
        'my_custom_menu_page',
        plugins_url( 'myplugin/images/icon.png' ),
        6
    ); 
}
add_action( 'admin_menu', 'wpdocs_register_my_custom_menu_page' );
 
/**
 * Display a custom menu page
 */
function my_custom_menu_page(){
    esc_html_e( 'Admin Page Test', 'textdomain' );  
}

参考

  • 重要: WordPress 4.4 から、衝突を避けるために $position をユニークに保つ心配は不要になりました。詳しくは #23316 を見てください。
  • もし「このページにアクセスする権限がありません」エラーに出くわした場合、フックするのが早すぎるということです。使用すべきフックは admin_menu です。
  • もし既存の管理者メニューのアイテムを別の場所に移動させたいだけの場合、admin_menu フックを使ってグローバルな $menu$submenu 変数(両方とも配列)内の現在の位置からメニューのアイテムを取り除き、配列の他の場所に設置することができます。
  • この関数は「権限」(Roles and Capabilities 参照)を使用して、メニューにページが含まれるかどうかを決定しています。同様に、ページの出力を取り扱うためにフックされた関数も、要求される「権限」をユーザーが持っていることを検証しなければなりません。
  • Settings API を使ってデータを保存していて、ユーザーが管理者以外である必要がある場合、$option_groupregister_setting() 内の $option_group と同じである option_page_capability_{$option_group} フックを通じて権限を修正する必要があります。Settings API を参照してください。.

編集者にデータを保存させる例:

// Settings APIを使って設定を登録
function register_my_setting() {
	register_setting( 'my-options-group', 'my-option-name', 'intval' ); 
} 
add_action( 'admin_init', 'register_my_setting' );

// 権限の修正
function my_page_capability( $capability ) {
	return 'edit_others_posts';
}
add_filter( 'option_page_capability_my-options-group', 'my_page_capability' );

変更履歴

ソースファイル

add_menu_page()wp-admin/includes/plugin.php にあります。

外部リソース

関連項目

管理メニューの追加


管理メニュー: add_menu_page(), remove_menu_page(), add_submenu_page() /en, remove_submenu_page() /en, add_dashboard_page() /en, add_posts_page() /en, add_media_page() /en, add_links_page() /en, add_pages_page() /en, add_comments_page() /en, add_theme_page() /en, add_plugins_page() /en, add_users_page() /en, add_management_page() /en, add_options_page()


関数リファレンステンプレートタグ目次もご覧ください。


最新英語版: Reference / Functions / add_menu_page()