غیرفعال کردن بررسی آپدیتهای وردپرس با کدنویسی
اگه میخوای وردپرس بهطور کامل از بررسی بهروزرسانیها (هسته، افزونهها و قالبها) جلوگیری کنه، این کد رو داخل فایل functions.php قالبت بذار.
🧩 نکته قالب
اگه کد رو داخل فایل
functions.phpاضافه میکنی، حتماً از چایلد تم استفاده کن؛ چون با هر آپدیت قالب، تغییراتت از بین میرن.
مرحله ۱: غیرفعال کردن کش آپدیتها
این بخش جلوی بررسی یا ذخیرهی اطلاعات آپدیت توسط وردپرس رو میگیره.
add_filter('pre_site_transient_update_core', '__return_null');
add_filter('pre_site_transient_update_plugins', '__return_null');
add_filter('pre_site_transient_update_themes', '__return_null');
مرحله ۲: حذف هوکهای مربوط به آپدیت
این خطوط باعث میشن توی بخش مدیریت، هیچ فانکشن مربوط به آپدیت لود نشه.
remove_action('load-update-core.php', 'wp_update_plugins');
remove_action('load-update-core.php', 'wp_update_themes');
remove_action('load-update-core.php', 'wp_version_check');
مرحله ۳: مسدود کردن درخواستهای API به wordpress.org
با این کد، وردپرس دیگه هیچ تماسی با سرورهای آپدیت خودش نمیگیره.
add_filter('pre_http_request', function($pre, $args, $url) {
if (
strpos($url, 'api.wordpress.org/core/version-check') !== false ||
strpos($url, 'api.wordpress.org/plugins/update-check') !== false ||
strpos($url, 'api.wordpress.org/themes/update-check') !== false
) {
return true; // Prevent the request from being sent
}
return $pre;
}, 100, 3);
این ترکیب باعث میشه کنترل کامل روی آپدیتها دست خودت باشه و وردپرس هیچ تماس خارجی با APIهای خودش نگیره.
اگه نمیخوای کدها رو مرحلهبهمرحله اضافه کنی، میتونی کل این اسنیپت رو مستقیم داخل functions.php بذاری (ترجیحاً داخل چایلد تم):
// Disable update transients for core, plugins, and themes
add_filter('pre_site_transient_update_core', '__return_null');
add_filter('pre_site_transient_update_plugins', '__return_null');
add_filter('pre_site_transient_update_themes', '__return_null');
// Remove update check actions from the admin panel
remove_action('load-update-core.php', 'wp_update_plugins');
remove_action('load-update-core.php', 'wp_update_themes');
remove_action('load-update-core.php', 'wp_version_check');
// Block outbound update requests to WordPress.org
add_filter('pre_http_request', function($pre, $args, $url) {
if (
strpos($url, 'api.wordpress.org/core/version-check') !== false ||
strpos($url, 'api.wordpress.org/plugins/update-check') !== false ||
strpos($url, 'api.wordpress.org/themes/update-check') !== false
) {
return true; // Prevent the request from being sent
}
return $pre;
}, 100, 3);
دانلود افزونه رایگان برای غیرفعال کردن آپدیتهای وردپرس
بهجای اضافه کردن کد دستی، میتونی افزونهای سبک و تمیز که مخصوص همین کار ساخته شده رو نصب کنی.
یا از صفحه انتشارهای GitHub آخرین نسخه رو بگیر.
ویژگیهای افزونه:
– مسدود کردن تمام بررسیهای آپدیت برای هسته، قالبها و افزونهها
– بدون استفاده از فریمورکهای سنگین
– نوشتهشده با کد تمیز و بومی وردپرس
ریسکهای احتمالی غیرفعال کردن آپدیتها
هرچند غیرفعال کردن آپدیتها میتونه به پایداری کمک کنه، اما از نظر امنیتی یهسری ریسک مشخص داره:
- آسیبپذیری امنیتی: نسخههای قدیمی ممکنه در برابر حملات شناختهشده آسیبپذیر باشن.
- ناسازگاری: بعضی افزونهها یا قالبها به توابع جدید وردپرس وابستهان.
- از دست دادن امکانات و بهبودها: آپدیتها معمولاً شامل بهینهسازی عملکرد هستن.
اگه تصمیم گرفتی آپدیتها رو غیرفعال کنی، حتماً این کارها رو انجام بده:
- تهیه منظم بکاپ دستی
- تست دورهای آپدیتها در محیط استیج
- استفاده از افزونه امنیتی مثل Wordfence یا iThemes Security
با این روش، کنترل کامل آپدیتها دست خودته فقط یادت باشه مسئولیت پایداری و امنیت سایت هم با خودت خواهد بود.


