WordPress プラグインを作成していますが、管理メニューのプラグインのオプション ページで css を読み込めません。http://codex.wordpress.org/Function_Reference/wp_enqueue_styleでコーデックスを調べました
そして、これが私が得たものです(質問に関係のないすべての部分を取り出し、プラグイン名を変更してコードを簡素化しました):
<?php
if (!class_exists('My_Plugin')){
class My_Plugin{
public function __construct(){
//add admin page
add_action('admin_menu', array($this, 'my_plugin_menu'));
add_action('admin_init', array($this, 'my_admin_init'));
}
//adds a page in the admin menu under posts
public function my_admin(){
//ensure user is admin
if ( !current_user_can( 'manage_options' ) ) {
wp_die( __( 'You do not have sufficient permissions to access this page.' ) );
}
?>
<div class="wrap">
<?php screen_icon(); ?>
<h1>My Plugin</h1>
</div>
<?php
}
//admin initialization function
public function my_admin_init(){
//register admin page's css
wp_register_style('my_style', plugins_url('my_style.css', __FILE__));
}
//add css files for admin menu()
public function my_admin_enqueue_styles(){
wp_enqueue_style('my_style');
}
//add menu page under posts
public function my_plugin_menu(){
$page = add_submenu_page('edit.php', 'My Plugin', 'My Plugin', 'manage_options', 'my-plugin', array($this, 'my_admin'));
//add css
add_action('admin_print_styles-'.$page, 'my_admin_enqueue_styles');
}
}
//instantiate the class
$mp = new My_Plugin();
}
my_style.css ファイルではh1{color:red;}
、テストするために立ち往生しました。オプションページは正常に読み込まれますが、firebug は CSS が読み込まれていることをまったく示していません。私は困惑しています。私は何をする必要がありますか?