説明
admin_enqueue_scripts は、管理画面で、CSS・JavaScriptを読み込むためのアクションです。
基本構文
do_action( 'admin_enqueue_scripts', string $hook_suffix )
引数
$hook_suffix:現在の管理画面のページを表す識別子
戻り値
コールバックには $hook_suffix が渡されます。
使い方(サンプル)
add_action( 'admin_enqueue_scripts', function( $hook ) {
if ( 'post.php' !== $hook ) {
return;
}
wp_enqueue_script( 'my-admin', plugins_url( 'admin.js', __FILE__ ) );
} );
注意点
$hook_suffixで画面を絞らないと、すべての管理画面で読み込まれてしまいます。
実務での使いどころ
- 管理画面で、CSSやJavaScriptを、読み込むとき。
- 特定の管理画面のページだけで、読み込むとき(引数
$hook_suffixで判定)。
よくあるミスと対処
- すべての管理画面で、読み込んでいる。
$hook_suffixで、対象のページに絞る。 - フロントに出したいのに、使っている。フロントには、
wp_enqueue_scripts。 - ログインページには効かない。ログインページには、
login_enqueue_scripts。
NG例
add_action( 'admin_enqueue_scripts', function () {
wp_enqueue_script( 'my-admin', plugins_url( 'admin.js', __FILE__ ) ); // すべての管理画面で読み込まれる
} );
OK例
add_action( 'admin_enqueue_scripts', function ( $hook_suffix ) {
if ( 'toplevel_page_my-settings' !== $hook_suffix ) {
return;
}
wp_enqueue_script( 'my-admin', plugins_url( 'admin.js', __FILE__ ), array(), '1.0.0', true );
} );
使い分け早見表
| フック | 対象 |
|---|---|
admin_enqueue_scripts |
管理画面 |
wp_enqueue_scripts |
フロント |
login_enqueue_scripts |
ログインページ |
関連項目
wp_enqueue_scripts、get_current_screen()、wp_enqueue_script()
公式リファレンス:admin_enqueue_scripts | WordPress Developer Resources

コメント