آپدیت خودکار وردپرس بدون نیاز به افزونه
- مقالات آموزشی
- بروزرسانی شده در
خب همونطور که میدونید آپدیت کردن وردپرس یکی از مهمترین کارهایی هست که باید انجامش بدید. غافل شدن از آپدیت وردپرس ممکنه سایتتون رو با مشکلات زیادی روبهرو کنه. بنابراین اگه میخواید سلامت سایتتون رو تأمین کنید، باید از بروز بودن سایت به آخرین نسخه مطمئن باشید. اما چطور آپدیت خودکار وردپرس رو فعال کنیم؟
برخی مواقع ممکنه زمان کافی برای آپدیت کردن وردپرس نداشته باشید، که در این صورت پیشنهاد میکنیم این مقاله رو حتماً مطالعه کنید. در این مقاله روشی رو خواهیم گفت که با استفاده از اون قادر میشید آپدیت خودکار وردپرس رو فعال کنید و دیگه نیازی به نگرانی در این خصوص نداشته باشید.
آنچه در این مقاله میخوانید
دلیل فعالسازی آپدیت خودکار وردپرس
آپدیت کردن وردپرس یه امر لازم و بسیار ضروری برای تمامی سایتها بهحساب میاد. با آپدیت کردن وردپرس نه تنها میتونید امنیت سایت رو چند برابر کنید، بلکه از شر پیغام و ارورهای زیادی هم راحت میشید.
اینکه سایت وردپرسی رو به آخرین ورژن بروز کنید باعث میشه بتونید به امکانات جدید دسترسی داشته باشید. بهعنوان مثال در نسخه جدید وردپرس، گوتنبرگ جایگزین ویرایشگر کلاسیک وردپرس شده که امکانات بسیار بیشتری در اختیار کاربران قرار میذاره و کار با وردپرس رو تا حد زیادی ساده و آسان کرده.
بهروزرسانیهایی که در اختیارتون قرار میگیرند کاملاً رایگان هستند و مشکلات سایت رو برطرف میکنند. همچنین بهروزرسانی بر روی فایلها و پوشههای مهم در وردپرس نیز تأثیر داره. اگه فایلهای اصلی رو تغییر داده باشید، بهروزرسانی تغییرات رو پاک کنه.
روشهای مختلف آپدیت خودکار وردپرس
روشهای زیادی برای آپدیت کردن عناصر مختلف وردپرس وجود داره. یه بهروزرسانی اصلی در وردپرس وجود داره که به دو قسمت تقسیم میشه؛ بخش اصلی این بهروزرسانی شامل یه سری ویژگیهای جدید و رفع مشکلات میشه و بهروزرسانیهای جزئی که با امنیت و نگهداری سایت سروکار دارند و بهصورت پیشفرض در هر آپدیت جدید این موارد تنظیمشده هست.
بهروزرسانی افزونهها، قالبها و بهروزرسانی فایلهای ترجمه نیز از دیگر مواردی هستند که میتونید بهراحتی اونها رو مدیریت کنید.
البته هدف اصلی این مقاله بهروزرسانی خود وردپرس هست که از دو روش امکانپذیره. میتونید برای آپدیت کردن وردپرس یا از روشی که در این مقاله خواهیم گفت و یا اینکه از افزونه استفاده کنید.
اگه قصد دارید بهروزرسانی خودکار وردپرس رو با استفاده از پلاگین فعال کنید، میتونید مقاله آموزشی مدیریت بهتر آپدیت های خودکار وردپرس با Easy Updates Manager رو مشاهده کنید.
بهصورت کلی بهروزرسانیهای اصلی وردپرس به ۳ زیرشاخه تقسیم میشن که در اینجا اونها رو توضیح خواهیم داد.
بهروزرسانی خودکار وردپرس از طریق wp-config.php
برای اینکه بتونید بهروزرسانی خودکار وردپرس رو مدیریت کنید، میتونید با استفاده از قطعه کدهای زیر این کار رو انجام بدید. اولین کاری که باید انجام بدید اینه که قطعه کد مربوطه رو در فایل wp-config.php وارد کنید.

اگه میخواید تمامی آپدیتهای خودکار (شامل هسته، افزونهها و ترجمهها) به صورت کامل غیرفعال بشن، باید از این کد استفاده کنید:
define( 'AUTOMATIC_UPDATER_DISABLED', true );
اما اگه میخواید بهروزرسانیهای اصلی و هسته بزرگ وردپرس به صورت خودکار انجام بشن، میتونید از قطعه کد زیر برای تغییر بهروزرسانیهای اصلی استفاده کنید:
define( 'WP_AUTO_UPDATE_CORE', true );
استفاده از فیلترهای API
این امکان رو دارید که بهجای استفاده از کدهای ثابتی که در بالا قرار دادیم، از فیلترهای API استفاده کنید. این فیلترها درواقع یه سری توابع هستند که این امکان رو فراهم میکنه که متغیرها رو سفارشی کنید.
استفاده از این فیلترها به نسبت کدهای ثابت باعث میشه کنترل بیشتری بر روی بهروزرسانیهای سایت داشته باشید، به همین دلیله که در این روش میتونید از انواع خاص و مختلفی از بهروزرسانیها استفاده کنید و یا اینکه برای رسیدن به هدفتون از یه افزونه کمک بگیرید.
مثلاً میتونید با استفاده از قطعه کد زیر تمامی بهروزرسانیهای خودکار رو غیرفعال کنید:
add_filter( 'automatic_updater_disabled', '__return_true' );
و یا اینکه میتونید از کد زیر برای بهروزرسانی موارد اصلی استفاده کنید:
add_filter( 'auto_update_core', '__return_true' );
خب حالا بریم سراغ یه سری کد که میتونید با استفاده از اونها یه سری تغییرات منحصربهفرد رو اعمال کنید.
کد زیر برای اعمال تغییرات جزئی استفاده میشه:
add_filter( 'allow_minor_auto_core_updates', '__return_true' );
از این کد هم میتونید برای اجازه دادن به بهروزرسانیهای اصلی استفاده کنید:
add_filter( 'allow_major_auto_core_updates', '__return_true' );
همچنین یه قطعه کد برای بهروزرسانیهای توسعهدهنده وجود داره که بهصورت زیر هست:
add_filter( 'allow_dev_auto_core_updates', '__return_true' );
تمامی این کدها قابلیت این رو دارند که عملکرد بالعکس داشته باشند. برای این کار فقط باید عبارت “true” در این کدها رو به “false” تغییر بدید. به همین راحتی!
حالا بریم سراغ بهروزرسانیهای قالبها و افزونهها:
بهروزرسانی افزونههای وردپرسی با استفاده از کد زیر امکانپذیره:
add_filter( 'auto_update_plugin', '__return_true' );
برای آپدیت قالبها هم میتونید از این کد استفاده کنید:
add_filter( 'auto_update_theme', '__return_true' );
آپدیت خودکار وردپرس و ارسال ایمیل اطلاع رسانی
وردپرس یه سری اطلاعات رو به مدیران وبسایت از طریق ایمیل ارسال میکنه که معمولاً مضمون اونها بهصورت زیر هست.

ایمیلهای نتیجه بهروزرسانی موفق
یکی از بهروزرسانیهایی که ممکنه برای مدیران وبسایتهای وردپرسی ارسال بشه، ایمیلهای نتیجه هست؛ به این صورت که اگه بهروزرسانی بهدرستی اعمالشده باشه، یه ایمیل با متن ” سایت شما بهروزرسانی شده هست” دریافت خواهید کرد. زمانی که این دسته از ایمیلها رو دریافت میکنید نیازی نیست کاری انجام بدید، درواقع این دسته از ایمیلها تنها برای اطلاعرسانی هستند.
البته این امکان رو دارید که تمامی این اعلانها رو غیرفعال کنید. برای این کار باید از یه سری کدهای ثابت استفاده کنید که در اینجا این کدها رو قرار دادهایم.
غیرفعال کردن ایمیلهای نتیجه:
add_filter( 'auto_core_update_send_email', '__return_false' );
ایمیلهای بهروزرسانی ناموفق
دسته دیگری از ایمیلها که ممکنه باهاش مواجه بشید، ایمیلهایی هست که اعلام میکنند یه نسخه جدید در دسترس هست و باید وردپرس رو بهصورت دستی آپدیت کنید. با مشاهده این نوع ایمیل درواقع به این موضوع پی میبرید که بهروزرسانی خودکار انجامنشده هست.
غیرفعال کردن ایمیلهای اعلان بهروزرسانی ناموفق:
add_filter( 'send_core_update_notification_email', '__return_false' );
ایمیلهای debugging
ایمیلهای Debugging، دسته دیگه از ایمیلهای اعلان هستند که ممکنه باهاش مواجه بشید. این ایمیلها زمانی ارسال میشن که یه مشکل در سایت رخ داده باشه و باید سریعاً نسبت به رفع اون مشکل اقدام کنید.
خاموش کردن اعلان ایمیلهای debugging:
add_filter( 'automatic_updates_send_debug_email', '__return_true' );
اگه به دنبال این هستید که موارد خاص رو بهروزرسانی کنید، پیشنهاد میکنیم از فیلترهای API استفاده کنید. میتونید با استفاده از این فیلترها برخی از موارد ایمیلهای اعلان رو سفارشیسازی کنید و از ارسال ایمیلهای دریافتی بیمورد و غیرضروری جلوگیری کنید.
فعالسازی آپدیت خودکار از داخل پیشخوان (بدون یک خط کد)
در نسخههای جدید وردپرس، دیگه اصلاً نیازی به کدنویسی و دستکاری فایلهای هاست نیست. کاربران میتونند خیلی راحت به بخش بروزرسانیها در پیشخوان بروند و با کلیک روی یه گزینه، آپدیت خودکار رو برای نسخههای اصلی فعال کنند.
برای این کار کافیه به مسیر پیشخوان > بروزرسانیها بروید. در این بخش عبارتی مثل «این سایت به طور خودکار فقط با نسخههای مکرر و امنیتی بروز میشود» رو میبینید. درست زیر اون، روی لینک «فعالسازی بروزرسانیهای خودکار برای تمام نسخههای جدید» کلیک کنید تا هسته اصلی وردپرس همیشه بدون دخالت شما کاملاً آپدیت بمونه.

مدیریت آپدیت خودکار افزونهها به صورت تکبهتک
گاهی اوقات آپدیت شدن ناگهانی یه افزونه خاص ممکنه کل سایت رو به هم بریزه. در صفحه افزونهها، این امکان وجود داره که آپدیت خودکار رو فقط برای پلاگینهای امن و ضروری فعال کرد و برای افزونههای حساس غیرفعال نگه داشت تا سایت فرونریزه.
برای مدیریت این بخش، به مسیر افزونهها > افزونههای نصبشده بروید. در این صفحه، یه ستون اختصاصی به اسم «بروزرسانی خودکار» اضافه شده هست. روبهروی هر افزونه میتونید روی گزینه «فعالسازی بروزرسانی خودکار» یا «غیرفعالسازی بروزرسانی خودکار» کلیک کنید تا کنترل کامل آپدیت تکتک پلاگینها رو در دست بگیرید.

تنظیم آپدیت خودکار قالبهای وردپرس از بخش پوستهها
تغییرات ظاهری قالبها هم مثل افزونهها اهمیت زیادی داره. به مدیران وبسایت یاد میدیم که چطور میتونند بدون خراب شدن چیدمان سایت، آپدیت خودکار قالبهای بومی یا اورجینال رو مستقیماً از بخش نمایش و پوسته فعال کنند.
کافیه به مسیر نمایش > پوستهها بروید و روی قالب فعال یا هر قالبی که میخواید آپدیت بشه کلیک کنید تا پنجره جزئیات اون باز بشه. درست زیر نام نویسنده قالب، گزینهای به نام «فعالسازی بروزرسانی خودکار» وجود داره که با کلیک روی اون، قالب سایت همیشه با آخرین تغییرات طراح همگام میشه.

جلوگیری از خرابی سایت با غیرفعال کردن آپدیت در زمانهای حساس
یه راهکار فوقالعاده کاربردی برای مواقعی که سایت کمپین فروش داره یا ترافیک بالاست؛ یاد میدیم چطور موقتاً آپدیتها رو متوقف کنید تا تداخل ناگهانی باعث از دست رفتن مشتریها نشه.
وقتی سایت درگیر جشنواره فروش یا ورودی بالای کاربران هست، اصلاً زمان مناسبی برای تغییرات ناگهانی نیست. برای جلوگیری از این اتفاق، مدیران وبسایت میتونند موقتاً با استفاده از همان روشهای گفتهشده در پیشخوان (یا قرار دادن موقتی کد غیرفعالسازی کامل در wp-config.php)، جلوی هرگونه بروزرسانی خودکار رو بگیرید و بعد از اتمام کمپین، دوباره اون رو فعال کنید تا ریسک خوابیدن سایت در زمان درآمدزایی به صفر برسه.
تغییر زمان دقیق اجرای آپدیت خودکار بدون افزونه
وردپرس برای انجام کارهای زمانبندیشده مثل بررسی و اجرای آپدیتهای خودکار، از یک سیستم داخلی به اسم کرونجاب (WP-Cron) استفاده میکنه. مشکل اینجاست که این سیستم کاملاً وابسته به ترافیک سایت شما هست؛ یعنی هروقت کاربری وارد سایت بشه، این فرآیند تازه در پسزمینه اجرا میشه. حالا اگه این اتفاق درست وسط ساعت اوج ترافیک و خرید کاربران رخ بده، لود شدن همزمان فایلهای آپدیت و مشغول شدن منابع سرور میتونه سرعت سایت رو به شدت پایین بیاره و تجربه بدی برای بازدیدکنندگان رقم بزنه.
برای حل این مشکل بدون نیاز به هیچ افزونهای، بهتره سیستم کرونجاب داخلی وردپرس رو در فایل wp-config.php با کد
define( 'DISABLE_WP_CRON', true );
غیرفعال کنید. حالا وارد پنل هاست (سیپنل یا دایرکتادمین) بشید و از بخش Cron Jobs، یه کرونجاب واقعی بسازید. زمانش رو بذارید روی ساعت خلوت (مثلاً ۴ صبح) و این دستور رو توش قرار بدبد تا آپدیتها فقط اون موقع بررسی بشن:
wget -q -O - https://yourdomain.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
نکته: به جای yourdomain.com آدرس سایت خودتون رو بنویسید.
البته با افزونه هم میتونید این کار رو انجام بدید، پیشنهاد میکنیم مقاله مدیریت کرون جاب با افزونه رو مطالعه کنید.
استثنا کردن یک افزونه یا قالب خاص از آپدیت خودکار با کدنویسی
فعال کردن آپدیت خودکار برای همه افزونهها کار خیلی راحتی هست، اما گاهی اوقات شما یک افزونه حساس دارید که خودتون کدهاش رو شخصیسازی کردید یا نگرانید که نسخه جدیدش با قالبتون تداخل داشته باشه. در این حالت، اگر آپدیت خودکار کلی فعال باشه، با اومدن نسخه جدید تمام زحمات شما پاک میشه یا سایت به هم میریزه. خوشبختانه هسته وردپرس این امکان رو در اختیارتون قرار میده که بدون نصب هیچ پلاگین سنگینی، برای سیستم بروزرسانی استثنا قائل بشید.
- قدم ۱: وارد مسیر wp-content/themes بشید و پوشه قالب فعال خودتون رو باز کنید.
- قدم ۲: فایل functions.php رو باز کنید و این کد رو به انتهای اون اضافه کنید:
add_filter( 'auto_update_plugin', 'mihanwp_exclude_plugin_from_auto_update', 10, 2 );
function mihanwp_exclude_plugin_from_auto_update( 'update', 'item' ) {
// به جای plugin-folder/plugin-file.php مسیر افزونه خودتون رو بنویسید
if ( 'plugin-folder/plugin-file.php' === 'item'->'plugin' ) {
return false;
}
return 'update';
}
با این کار، همه افزونهها آپدیت میشن به جز این افزونه خاص که قفلش کردید.
مدیریت آپدیتهای خودکار هسته وردپرس به صورت دلخواه
ثابت WP_AUTO_UPDATE_CORE یکی از قدرتمندترین ابزارهای وردپرس برای مدیریت آپدیتهای هسته اصلی بدون افزونه هست، اما بیشتر افراد فقط با حالت فعال یا غیرفعال کردن اون آشنا هستند. آپدیتهای هسته وردپرس به دو دسته تقسیم میشن: آپدیتهای بزرگ (Major) مثل تغییر نسخه ۶.۱ به ۷.۰ که ویژگیهای جدید اضافه میکنه، و آپدیتهای کوچک و امنیتی (Minor) مثل تغییر ۶.۱.۱ به ۶.۱.۲ که فقط باگها رو برطرف میکنه. شما میتونید رفتار وردپرس رو دقیقاً بر اساس نیازتون با این کد تنظیم کنید.
اگر مقدار این ثابت رو برابر با true قرار بدید، وردپرس تمام آپدیتهای بزرگ و کوچک رو بدون اجازه شما نصب میکنه. اما اگر امنیت براتون اولویت داره و در عین حال از خرابی قالب در نسخههای بزرگ میترسید، بهتره مقدار اون رو برابر با عبارت ‘minor’ قرار بدید. با این کار، سایت شما همیشه آخرین وصلههای امنیتی رو دریافت میکنه و در برابر هکرها ایمن میمونه، اما آپدیتهای ساختاری بزرگ متوقف میشن تا خودتون بعد از تست و اطمینان، اونها رو دستی نصب کنید.
برای اینکه مشخص کنیید وردپرس چقدر اجازه داره خودش رو خودکار آپدیت کنه، کد زیر رو در همان فایل wp-config.php اضافه کنید. بسته به نیازتون، فقط یکی از حالتهای زیر رو انتخاب کنید:
حالت الف (فقط آپدیتهای امنیتی و کوچک )
این حالت سایت رو ایمن نگه میداره اما از آپدیتهای بزرگی که ممکنه قالب رو خراب کنند جلوگیری میکنه.
define( 'WP_AUTO_UPDATE_CORE', 'minor' );
حالت الف (آپدیت کامل و همهجانبه)
اگر میخوای سایت همیشه بدون دخالت شما به آخرین نسخه (حتی نسخههای بزرگ مثل تغییر از ۶ به ۷) بره، این کد رو بذارید:
define( ‘WP_AUTO_UPDATE_CORE’, true );
نحوه غیرفعال کردن ایمیلهای اطلاعرسانی آپدیت خودکار با کدنویسی
وقتی آپدیت خودکار وردپرس، افزونهها یا قالبها فعال باشه، سیستم بعد از هر بروزرسانی موفق یا ناموفق، یک ایمیل اطلاعرسانی برای مدیر سایت میفرسته. اگر شما مدیریت چندین سایت وردپرسی رو بر عهده داشته باشید یا افزونههای زیادی روی سایتتون نصب باشه، این ایمیلهای مکرر به سرعت صندوق ورودی (Inbox) شما رو پر میکنه و به یک موضوع رو روی مخ و آزاردهنده تبدیل میشن که ایمیلهای کاری مهمتر رو گم میکنه.
برای قطع کردن این ایمیلها، این سه خط کد رو به انتهای فایل functions.php قالب اضافه کنید:
// قطع ایمیلهای آپدیت موفق هسته
add_filter( 'auto_core_update_send_email', '__return_false' );
// قطع ایمیلهای اعلان آپدیت ناموفق
add_filter( 'send_core_update_notification_email', '__return_false' );
// خاموش کردن ایمیلهای عیبیابی و دیباگ سیستم آپدیت
add_filter( 'automatic_updates_send_debug_email', '__return_false' );
چطوری آپدیت خودکار فایلهای ترجمه (زبان فارسی) رو مدیریت کنیم؟
وردپرس به صورت پیشفرض فایلهای زبان و ترجمه مربوط به هسته، افزونهها و قالبها رو خودش به صورت خودکار در پسزمینه بروزرسانی میکنه تا همیشه اصطلاحات فارسی پیشخوان درست باقی بمونه. اما این قابلیت یک مشکل بزرگ برای وبمسترهای ایرانی داره؛ اگر شما خودتون دستی برخی از ترجمههای یک افزونه یا قالب رو در پوشه languages اصلاح کرده باشید تا با لحن سایتتون سازگار بشه، با هر بار آپدیت خودکار ترجمه، تمام تغییرات شما کاملاً پاک و بازنویسی میشن.
اگر خودت کلمات پیشخوان رو دستی اصلاح کردید و نمیخواید با آپدیت ترجمه پاک بشن، این کد رو به انتهای فایل functions.php قالب اضافه کنید:
add_filter( 'auto_update_translation', '__return_false' );
این کد جلوی بازنویسی خودکار فایلهای زبان رو میگیره و ترجمههای اختصاصی تو رو حفظ میکنه.
اگر آپدیت خودکار کار نکرد چه کنیم؟
اگر تمام کدهای بالا رو زدیید ولی دیدید آپدیتها انجام نمیشن، این سه مورد فنی رو در هاست چک کنید:
- دسترسی فایلها (Permissions): مطمئن بشو که سطح دسترسی پوشه wp-content و پوشه افزونهها روی 755 و فایلها روی 644 باشه؛ وگرنه وردپرس اجازه ساخت فایل جدید رو نداره.
- توابع ارتباطی سرور: به پشتیبانی هاست تیکت بزن و مطمئن بشو که تابع cURL روی سرور فعال هست و آیپیهای سرور اصلی وردپرس (api.wordpress.org) توسط فایروال هاست مسدود نشده باشند.
چکلیست اقدامات ایمنی قبل از رها کردن سایت روی حالت آپدیت خودکار
رها کردن سایت روی حالت آپدیت خودکار بدون داشتن یک شبکه ایمنی، مثل راه رفتن روی لبه تیغ هست؛ چون هر لحظه ممکنه آپدیت یک افزونه با قالب تداخل پیدا کنه و سایت بالا نیاد. مهمترین کاری که باید قبل از فعالسازی این قابلیت انجام بدید، راهاندازی یک سیستم بکآپگیری خودکار و منظم هست. اما از اونجایی که نمیخوایم از افزونه استفاده کنیم، بهترین راهکار این هست که وارد کنترلپنل هاست (مثل سیپنل) بشید و از بخش Backup Wizard یا تنظیمات JetBackup، یک برنامه زمانبندی روزانه برای بکآپگیری اتوماتیک روی یک سرور مجزا یا فضای ابری ست کنید.
اقدام ایمنی بعدی، تنظیم یک سیستم مانیتورینگ یا آپتایم (Uptime Monitoring) رایگان بیرون از سایت هست (مثل سایت UptimeRobot). این ابزارها هر ۵ دقیقه یکبار سایت شما رو بررسی میکنه و اگر به خاطر آپدیت خودکار ناگهانی، سایت با خطای ۵۰۰ یا صفحه سفید مواجه بشه و در دسترس نباشه، سریعاً از طریق ایمیل به شما هشدار میده تا بتونید قبل از اینکه کاربران متوجه بشن، نسخه پشتیبان رو بازگردانی کنید.
جمعبندی
در نهایت، فعالسازی آپدیت خودکار وردپرس بدون نیاز به افزونه، یکی از بهترین کارهایی هست که میتونید برای حفظ امنیت و بالا بردن سرعت سایتتون انجام بدید. با این روش، دیگه نیازی نیست مدام نگران نصب افزونههای سنگین، تداخلهای ناگهانی یا پر شدن فضای هاست باشید. همه چیز کاملاً سبک، تمیز و از طریق کدهای استاندارد خود هسته وردپرس مدیریت میشه.
تنها نکتهای که باید بهش توجه داشته باشید این هست که قبل از سپردن همه چیز به دست کدهای هوشمند وردپرس، چکلیست ایمنی و سیستم بکآپگیری خودکار هاست رو فعال کنید. با تنظیم دقیق زمان اجرای آپدیتها روی ساعتهای خلوت شب (مثل ساعت ۴ صبح) و استثنا کردن افزونههای حساس، سایت شما همیشه بروز، ایمن و پایدار میمونه و میتونید با خیال راحت روی رشد کسبوکارتون تمرکز کنید.
امیدواریم این مقاله به شما برای آپدیت خودکار وردپرس کمک کرده باشه. موفق و پیروز باشید. 🙂
برای ارسال نظر لطفا ابتدا ثبتنام کنید یا وارد شوید.