wp_deregister_script()


WordPressのwp_deregister_script()関数は、登録済みのJavaScriptスクリプトを登録解除するために使用されます。この関数を利用することで、不要なスクリプトの読み込みを防ぐことができます。

構文

wp_deregister_script( string $handle );
  • $handle (string) — 登録解除したいスクリプトのハンドル名。

使用例

例 1: 不要なスクリプトの登録解除

以下のコードは、テーマやプラグインで登録された特定のスクリプトを解除します。

<?php
function remove_unwanted_script() {
    wp_deregister_script( 'jquery' );
}
add_action( 'wp_enqueue_scripts', 'remove_unwanted_script', 100 );
?>

例 2: 管理画面でスクリプトを登録解除

管理画面でのみスクリプトを解除する場合のコードです。

<?php
function deregister_admin_script() {
    if ( is_admin() ) {
        wp_deregister_script( 'custom-admin-script' );
    }
}
add_action( 'admin_enqueue_scripts', 'deregister_admin_script', 100 );
?>

例 3: 条件付きでスクリプトを登録解除

特定の条件下でスクリプトを解除する例です。

<?php
function conditional_deregister_script() {
    if ( is_page( get_the_ID() ) ) {
        wp_deregister_script( 'example-script' );
    }
}
add_action( 'wp_enqueue_scripts', 'conditional_deregister_script', 100 );
?>

例 4: プラグインのスクリプトを解除

特定のプラグインが追加したスクリプトを解除する場合のコードです。

<?php
function remove_plugin_script() {
    wp_deregister_script( 'plugin-script-handle' );
}
add_action( 'wp_enqueue_scripts', 'remove_plugin_script', 100 );
?>

例 5: スクリプト解除後に独自スクリプトを追加

不要なスクリプトを解除し、独自のスクリプトを登録する方法です。

<?php
function replace_script_with_custom() {
    wp_deregister_script( 'default-script' );
    wp_register_script( 'custom-script', get_template_directory_uri() . '/js/custom.js', array(), null, true );
    wp_enqueue_script( 'custom-script' );
}
add_action( 'wp_enqueue_scripts', 'replace_script_with_custom', 100 );
?>

注意事項

  • wp_deregister_script()は、スクリプトの依存関係に影響を与える可能性があります。
  • 登録解除後、再登録しないと他のスクリプトが動作しなくなる場合があります。
  • テーマやプラグインの更新でコードが上書きされることに注意してください。

関連機能: