説明
wp_deregister_script() は、登録済みのスクリプトの登録を解除する関数です。
基本構文
wp_deregister_script( string $handle ): void
引数
$handle:登録解除するスクリプトの識別名
戻り値
戻り値はありません。
使い方(サンプル)
wp_deregister_script( 'jquery' );
注意点
- WordPress標準のjQueryを外して別のバージョンを読み込む場合などに使いますが、プラグインやテーマが依存していることが多く、動作しなくなる恐れがあります。
- 管理画面では実行しないよう、
is_admin()で条件分岐するのが一般的です。
実務での使いどころ
- プラグインやテーマが読み込むJavaScriptを、別のバージョンやCDNに差し替えるとき(解除してから、同じハンドルで登録し直す)。
- 不要なスクリプトを、完全に外すとき。
よくあるミスと対処
jqueryを解除し、jqueryに依存するスクリプトが、出力されなくなる。差し替えるときは、jquery-coreを解除して、再登録するのが一般的。管理画面では、解除しない。- プラグインが登録するより前に実行してしまい、解除できない。
wp_enqueue_scriptsフックの優先度を大きく(100など)して、後で実行する。 - 他のスクリプトが依存しているハンドルを解除し、それらが読み込まれなくなる。
NG例
add_action( 'wp_enqueue_scripts', function () {
wp_deregister_script( 'jquery' ); // jquery に依存するスクリプトが、出力されなくなる
} );
OK例
add_action( 'wp_enqueue_scripts', function () {
wp_deregister_script( 'plugin-script' );
}, 100 );
使い分け早見表
| 関数 | 役割 |
|---|---|
wp_deregister_script() |
登録そのものを解除する |
wp_dequeue_script() |
読み込みの予約だけを取り消す(登録は残る) |
wp_register_script() |
登録する |
関連項目
wp_dequeue_script()、wp_register_script()
公式リファレンス:wp_deregister_script() | Function | WordPress Developer Resources

コメント