حل مشکل خطای زمان بندی از دست رفته در وردپرس

حل مشکل خطای زمان بندی از دست رفته در وردپرس
یه موقعایی پیش میاد که دلت میخواد پستات رو بر اساس یه برنامه منظم منتشر کنی یا شاید هم میخوای تو زمان خاصی پست منتشر بشه تا وقتی که مثلا مسافری یا به اینترنت دسترسی نداری، سایتت بدون تو هم به کارش ادامه بده ، اینجاست که قابلیت زمانبندی پستها توی وردپرس به کمکت میاد. به زبان ساده، تو میتونی ساعت و تاریخ دقیق منتشر شدن پستت رو انتخاب کنی و بعد با خیال راحت بری دنبال کارات! وردپرس به صورت خودکار تو همون زمان مشخص، پستتو رو میذاره روی سایت
حالا، یه مشکلی که ممکنه باهاش برخورد کنی اینه که پستت تو زمان تعیین شده منتشر نشه! اینجاست که میگن با خطای زمانبندی از دست رفته یا همون Missed Schedule مواجه شدی.
اما نگران نباش! توی این مقاله میخوایم دقیقاً بهت یاد بدیم چطور میشه این مشکل رو برطرف کرد. پس با ما همراه باش تا دیگه از شر این خطا راحت بشی.
خطای زمانبندی از دست رفته توی وردپرس چیه و چرا میاد
ببین دوست عزیز، وقتی این خطا میاد یعنی یه چیزی زیر سر سیستم زمانبندی وردپرسه. اما دلیلش میتونه خیلی چیزهای مختلفی باشه. برای همینم هست که قبل از اینکه دست به کاری بزنی و شروع کنی به تغییر تنظیمات، باید اول بفهمی مشکل اصلی از کجاست. بعد که دلیل رو پیدا کردی، میتونی درستش کنی.
اینجا با هم یه نگاهی به دلایل اصلی که ممکنه این مشکل رو به وجود بیارن میندازیم:
ترافیک سایت کم شده
یعنی چی؟ یعنی اگه سایتت به هر دلیلی (مثلا کند باشه یا درست لود نشه) بازدیدکنندههاش کم بشن، سیستم کرون جاب (Cron Job) وردپرس که مسئول اجرای کارهای زمانبندی شدهست، ممکنه دیگه به موقع اجرا نشه. در نتیجه پستت هم تو زمان مشخص شده منتشر نمیشه. پس کمبود ترافیک میتونه یکی از مقصرهای اصلی باشه.
مشکل از WP-CRON هست
این WP-CRON در واقع مغز متفکر سیستم زمانبندی وردپرسه. هر بار که یه صفحه از سایتت بازدید میشه، این سیستم یه سری بررسی میکنه که ببینه کاری برای انجام دادن داره یا نه (مثلا یه پست رو باید منتشر کنه).
حالا اگه توی سایتت مشکل اسکریپتی یا کدی وجود داشته باشه، ممکنه این سیستم درست عمل نکنه و نتونه پستتو تو زمان مقرر منتشر کنه. در واقع یه خطای کوچیک میاد کل برنامه ریزی رو به هم میزنه!
درمان خطای Missed Schedule در وردپرس
خب، حالا که فهمیدیم این خطا از کجا میاد، بریم سراغ چارهاش! برای حل این مشکل توی سایت وردپرسیات، basically دو تا راه پیش روت هست ، هر کدوم از این روشها رو میتونی انتخاب کنی و به راحتی مشکلت رو حل کنی.
راه حل اول: استفاده از افزونه (راحتترین راه!)

سادهترین کار اینه که یه افزونه نصب کنی تا کار رو برات راه بندازه. یکی از بهترین افزونهها برای این کار، WP Missed Schedule هست ، این افزونه کاملاً رایگانه و میتونی به راحتی از خود مخزن وردپرس دانلود و نصبش کنی. اگر بلد نیستی چطوری افزونه نصب کنی، یه سرچ بزنی آموزش نصب افزونه وردپرس یک مقاله کامل در این مورد توضیح داده ایم که چطور افزونه را در سایت خود نصب کنید.
نکته : بعد از نصب و فعالسازی این افزونه تمامی مقاله های زمانبندی شده شما هر 15 دقیقه یک بار بررسی می شود و 20 عدد مقاله به صورت همزمان منتشر می شود.
روش دوم: راهاندازی CRON Jobs (راه حل دائمی!)
یه روش حرفهایتر و ماندگارتر هم برای حل این مشکل وجود داره : تنظیم CRON Jobs توی هاست ، این روش یه کم فنیتره، اما قول میدم اگه درست انجامش بدی، سایتت رو برای همیشه از شر این خطا خلاص میکنه. basically میری سراغ تنظیمات اصلی سیستم و مشکل رو از ریشه حل میکنی.
چطوری انجامش بدیم ؟
اول از همه، بکاپ بگیر! (اینو جدی بگیر) قبل از اینکه دست بزنی به هر فایلی، حتماً یه نسخه پشتیبان کامل از سایتت بگیر. اگه اشتباهی کردی، میتونی راحت همه چیزو به حالت قبل برگردونی.
غیرفعال کردن wp-cron پیشفرض : برای این کار باید بری تو فایل wp-config.php سایتت. معمولاً از طریق FTP یا File Manager داخل هاستت میتونی به این فایل دسترسی پیدا کنی. مسیرش معمولاً این شکلیه ، File Manager » public_html » wp-config.php
با انجام این مراحل، داری به سیستم میگی که دیگه خودت به صورت دستی کار زمانبندی رو مدیریت میکنی و قرار نیست به wp-cron پیشفرض وردپرس اعتماد کنی. اینطوری مشکل Missed Schedule هم دیگه تکرار نمیشه!
حالا برای تکرار نشدن این خطا باید کد زیر را در فایل گفته شده یعنی همان wp-config.php قرار دهید.
define(‘DISABLE_WP_CRON’, true);

مرحله بعد: یه CRON Job جدید بساز!
حالا که اولین قدم رو برداشتی، بریم سراغ اصل ماجرا. تو پنل هاستت، دنبال آیکون یا گزینهای به نام CRON Jobs بگرد و روش کلیک کن مانند تصویر بالا
احتمالاً توی بخش «Advanced» یا «Tools» پیدا میشه. وقتی واردش شدی، یه فرم میبینی که میتونی توش مشخص کنی این کار خودکار چجوری و هر چند وقت یکبار اجرا بشه.

حالا که روی گزینه CRON Jobs کلیک کردی، یه صفحه جدید باز میشه که باید توش یه کار جدید تعریف کنی.
توی این صفحه، یه بخش به نام Common Settings پیدا کن. از لیست کشوییِ این بخش، گزینه Every Six Hours (یا همون هر شش ساعت یکبار) رو انتخاب کن ، بعدش هم فقط کافیه روی دکمه Add New Cron Job کلیک کنی تا همه چی تکمیل بشه!
بعد از آن برای ساخت cron jobs بر روی دکمه Add New Cron Job کلیک کنید تا کرون جاب سایت شما ساخته شود و به همین راحتی می توانید این مشکل سایت خود را حل کنید.
