説明
wp_script_is() は、スクリプトが登録済み・キュー済み・出力済みかなどの状態を調べる関数です。
基本構文
wp_script_is( string $handle, string $status = 'enqueued' ): bool
引数
$handle:スクリプトの識別名$status:registered/enqueued/done/to_do
戻り値
状態に合致すれば true。
使い方(サンプル)
if ( wp_script_is( 'jquery', 'registered' ) ) {
wp_enqueue_script( 'jquery' );
}
注意点
- jQueryが登録されているかの確認などに使えます。
実務での使いどころ
- スクリプトが、すでに読み込みの予約や、登録されているかを確認するとき。
- 他のプラグインが読み込んでいる場合に、二重に読み込まないようにするとき。
よくあるミスと対処
$statusを省略している。既定はenqueued(読み込みの予約済み)で、「登録済み」とは意味が違う。wp_enqueue_scriptsが終わる前に判定すると、まだ予約されていない。- 「出力済み」を調べたいのに、
enqueuedで判定している。出力済みはdone。
NG例
if ( wp_script_is( 'my-script' ) ) {
// 登録済みかを確認したつもり(予約済みかを確認している)
}
OK例
if ( wp_script_is( 'my-script', 'registered' ) ) {
wp_enqueue_script( 'my-script' );
}
使い分け早見表
$status |
意味 |
|---|---|
registered |
登録されている |
enqueued |
読み込みが予約されている(既定) |
done |
すでにHTMLに出力された |
to_do |
出力待ち |
関連項目
wp_style_is()、wp_enqueue_script()
公式リファレンス:wp_script_is() | Function | WordPress Developer Resources

コメント