How do WordPress disable the update check ?
Disable All Updates via Code (Recommended for Controlled Environments)
1. Add the following to your theme’s functions.php file or a custom plugin:
// Disable core updates
add_filter(‘pre_site_transient_update_core’, ‘__return_null’);
// Disable plugin updates
add_filter(‘pre_site_transient_update_plugins’, ‘__return_null’);
// Disable theme updates
add_filter(‘pre_site_transient_update_themes’, ‘__return_null’);
// Optional: Disable auto-update email notifications
add_filter(‘auto_core_update_send_email’, ‘__return_false’);
2. Disable Update Checks via wp-config.php
You can also add the following constants to your wp-config.php file:
// Disable core auto-updates
define(‘WP_AUTO_UPDATE_CORE’, false);
// Optional: Also disable auto-updates for plugins and themes (WordPress 5.5+)
add_filter(‘automatic_updater_disabled’, ‘__return_true’);
❗ Note: The above filter (automatic_updater_disabled) disables automatic updates, but the admin UI may still show available updates unless you use the transient filters.
Important Caveats
Security Risk: Disabling updates (especially core and plugins) can expose your site to vulnerabilities. Only do this in controlled or development environments.
WP-Cron Triggers: WordPress checks for updates via wp-cron. Disabling WP-Cron (define(‘DISABLE_WP_CRON’, true)) may affect checks but isn’t a full solution alone.