آموزش پیکربندی کرون جاب برای وردپرس
در این آموزش به تعریف٬ نحوه و ضرورت فعال یا غیرفعال کردن کرون جاب وردپرس پرداخته میشود و همچنین یک راه جایگزین جهت رفع اشکالات کرون جاب پیشنهاد میشود.
کرون جاب مجازی وردپرس
کرون جاب به یک عمل و یا وظیفهی برنامهریزی شده جهت انجام به صورت خودکار در دورههای متناوب زمانی گرفته میشود. برای مثال یک کرون جاب میتواند به صورت خودکار هر شش ساعت از یک فایل بکاپ بگیرد. همچنین پست زمانبندی شده در وردپرس (مثلا جهت انتشار در ساعت شش عصر فردا) از کرون جاب جهت انتشار خودکار در زمان مشخص شده استفاده میکند. همچنین اگر در پی ایجاد وبسایتی هستید که مانند روبات٬ مطالب را از سایتهای دیگر اخذ کرده و در سایت شما منتشر کند و به عبارت دیگر جهت راهاندازی سیستم اتوپایلوت و روبات نویسنده٬ شما بسیار نیازمند کرون جاب و البته ادامه این آموزش خواهید بود.
به صورت پیشفرض٬ وردپرس از یک کرون جاب واقعی جهت زمانبندی و وظایف مرتبط با آن استفاده نمیکند.. به جای آن٬ هر زمان که یک برگه در سایت وردپرسی بارگذاری میشود وردپرس فایل wp-cron.php را اجرا میکند. اگرچه این کرون جاب مجازی باعث راحتتر شدن کارها میشود اما باعث بروز اشکالاتی نیز میشود. این اشکالات به قرار زیرند:
- اجرای فایل wp-cron.php هر زمان که وردپرس یک برگه را بارگذاری میکند کاری غیرضروری است و اثرات منفی بر روی عملکرد سرور میگذارد مخصوصا برای سایتهایی که ترافیک بالایی دارند باعث کندی سایت میگردد.
- برای سایتهایی که ترافیک بالایی ندارند از سوی دیگر٬ ممکن است زمان بسیار زیادی صرف شود تا یک بازدیدکننده برگه را بارگذاری کند و باعث اجرای وظیفه زمانبندی شده گردد. مثلا انتشار یک پست زمانبندی شده در زمان مشخص مستلزم این است که در زمان مقرر یک بازدیدکننده از سایت بازدید کند و تا زمانی که بازدیدکنندهای از سایت بازدید نکند٬ آن پست مفروض منتشر نخواهد شد. این امر موجب از دست رفتن زمانبندی برای انتشار پستها و تاثیرات دیگر میگردد.
برای حل این مشکلات شما میتوانید کرون جاب مجازی پیشفرض وردپرس را غیرفعال کرده و در عوض آن یک کرون جاب واقعی را پیکربندی کنید. برای انجام این کار مراحل زیر را انجام دهید:
۱- غیرفعال کردن کرون جاب وردپرس
برای غیرفعال کردن کرون جاب مجازی وردپرس اقدامات زیر را انجام دهید:
۱- با استفاده از سی پنل و یا نرمافزار ftp وارد حساب سایت وردپرسیتان شوید.
۲- با استفاده از فایل منیجر سی پنل و در ریشه یا روت سایت٬ فایل wp-config.php را با استفاده از یک ویرایشگر متنی باز کنید
۳- این خط کد زیر را به فایل wp-config.php اضافه کنید:
define('DISABLE_WP_CRON', true);
۴- حال فایل را ذخیره کنید. اکنون کرون جاب وردپرس غیرفعال شده است.
پیکربندی یک کرون جاب واقعی برای وردپرس
پس از آن که کرون جاب پیشفرض وردپرس را با استفاده از دستورالعمل بالا غیرفعال کردید حال موقع پیکربندی یک کرون جاب واقعی است که در بازههای زمانی ثابت بدون نیاز به ترافیک سایت اجرا شود.
برای انجام این کار نیز باید وارد حساب سی پنل خود شوید. دستورالعملهای زیر نیز بر اساس سی پنل تهیه شده است. برای سایر پنلهای مدیریت هاست نیز مراحل کمابیش شبیه این است:
۱- وارد حساب سی پنل سایت شوید
۲- در بخش پیشرفته٬ بر روی لینک Cron jobs کلیک کنید
۳- زیر بخش ایمیل کرونCron Email – آدرس ایمیلی که دوست دارید اطلاعرسانیها را در هنگام اجرای کرون از طریق آن دریافت کنید وارد نمایید. هر زمان که یک وظیفه کرون انجام میشود شما ایمیلی دریافت خواهید کرد.
نکته: اگر تمایل ندارید در هنگام اجرای کرونها٬ ایمیلهای اطلاعرسانی دریافت کنید این کد را به خط فرمان اضافه کنید: >/dev/null 2>&1
۴- در قسمت Add New Cron Job و در جعبه فهرست Common Settings – گزینه Twice an hour را انتخاب کنید.
نکته: شما میتوانید هر کرون جاب را حداکثر هر ۱۵ دقیقه در اکانتهای اشتراکی و ریسلر اجرا کنید. بازه سی دقیقهای برای کرون جاب وردپرس بیش از اندازه کفایت است.
۵- در جعبه متنی خط فرمان٬ این خط کد را اضافه کنید. یادتان باشد که عبارت username را با نام کاربری هاست خود جایگزین کنید:
cd /home/username/public_html; /usr/local/bin/php -q wp-cron.php
نکته: توجه داشته باشید این خط کد را با فرض اینکه وردپرس شما در روت فضای میزبانیتان (public_html) بارگذاری شده است نوشتهایم. در صورتی که وردپرس شما در پوشه دیگری (مثلا به عنوان ساب دامین) نصب شده٬ دایرکتوری موردنظرتان را به جای (public_html) قرار دهید.
حال بر روی Add New Cron Job کلیک کنید. کرون جاب شما بلافاصله فعال خواهد شد..