この質問は回避するために作成されたことに注意してくださいglobal $plugin_name;
WordPress (WP 3.6) プラグインを作成していますが、
wp_get_current_user() in /var/www/wordpress/wp-includes/capabilities.php on line 1281, referer: http://10.1.1.6/wp-admin/admin.php?page=mhomepage/mhomepage_admin_menu.php
このコードを使用すると
$plugin_name='mhomepage';
// Hook for adding admin menus
add_action('admin_menu', 'add_plugin_admin_page', 10, 1);
do_action('admin_menu', $plugin_name.'/mhomepage_admin_menu.php');
// add_action('admin_menu', 'add_plugin_admin_page');
function add_plugin_admin_page($plugin_name) {
// global $plugin_name;
//must check that the user has the required capability
if (!current_user_can('manage_options'))
{
wp_die( __('You do not have sufficient permissions to access this page.') );
}
add_menu_page( 'mHomePage', 'mHomePage', 'manage_options', 'mhomepage/mhomepage_admin_menu.php', '', '', 6 );
// add_menu_page( 'mHomePage', 'mHomePage', 'manage_options', $plugin_name, '', '', 6 );
}
mhomepage_admin_menu.php
のように見える場所
<?php
echo "Plugin menu page";
?>
しかし、add_action('admin_menu', 'add_plugin_admin_page');
代わりに上記のコードで使用する場合
// add_action('admin_menu', 'add_plugin_admin_page', 10, 1);
// do_action('admin_menu', $plugin_name.'/mhomepage_admin_menu.php');
すべてうまくいきますか?誰かが何がなぜ起こっているのか、そして解決策は何かを説明できますか? do_action を使用して引数を add_plugin_admin_page 関数に渡したいと思います。
この回答https://stackoverflow.com/a/6127607/250422を見つけましたが、それが私のケースにも当てはまるかどうかはわかりません。何をすべきか本当にわかりません。