وردپرس برای اجرای برخی وظایف زمانبندیشده مانند انتشار مطالب زمانبندیشده، اجرای برخی فرآیندهای افزونهها و عملیات دورهای از فایل wp-cron.php استفاده میکند.
در حالت پیشفرض، وردپرس ممکن است در زمان مراجعه کاربران به وبسایت، اجرای WP-Cron را نیز بررسی و فراخوانی کند. در وبسایتهایی که تعداد درخواستها بالا است یا وظایف زمانبندیشده سنگینی دارند، فراخوانی مکرر wp-cron.php میتواند موجب افزایش مصرف منابع و در برخی شرایط کندی وبسایت شود.
در چنین شرایطی میتوان اجرای خودکار WP-Cron توسط وردپرس را غیرفعال کرده و اجرای آن را به Cron Job سرویس میزبانی منتقل نمود.
برای غیرفعالسازی WP-Cron، عبارت زیر را در فایل wp-config.php وردپرس اضافه نمایید:
define('DISABLE_WP_CRON', true);
پس از انجام این تغییر، لازم است یک Cron Job در دایرکتادمین ایجاد شود تا فایل wp-cron.php در بازههای زمانی مشخص اجرا گردد. برای نمونه میتوان از فرمانی مشابه زیر استفاده نمود:
/usr/bin/wget -O /dev/null https://example.com/wp-cron.php >/dev/null 2>&1
در دستور فوق باید example.com با نام دامنه وبسایت موردنظر جایگزین شود.
مراحل ایجاد و مدیریت Cron Job در دایرکتادمین در آموزش زیر ارائه شده است:
آموزش ایجاد Cron Job در دایرکتادمین
فاصله زمانی اجرای Cron Job باید متناسب با نوع وبسایت و وظایف زمانبندیشده آن تعیین شود. در صورتی که سایت دارای فرآیندهایی است که باید در زمان مشخص یا با فاصله زمانی کوتاه اجرا شوند، لازم است این موضوع پیش از افزایش فاصله اجرای Cron بررسی گردد.
همچنین پیش از اعمال تغییر در فایل wp-config.php توصیه میگردد از فایل موردنظر نسخه پشتیبان تهیه شود تا در صورت بروز مشکل امکان بازگردانی تنظیمات قبلی وجود داشته باشد.
