چطور مشکل عدم انتشار محتوای زمان بندی شده در وردپرس را رفع کنیم؟
انتشار محتوای جدید در وب سایت وردپرسی یکی از اصلی ترین کارهایی است که افراد به منظور بهبود سئو وب سایت خود انجام می دهند. زمانی که شما یک محتوای جدید را تهیه کرده و تصمیم می گیرید آن را منتشر کنید، با دو حالت اصلی در هنگام تلاش برای اتشار آن رو به رو می شوید. شما می توانید به راحتی روی دکمه «انتشار» کلیک کنید تا محتوا بلافاصله منتشر شود. اما این امکان را نیز دارید که از طریق لینک ویرایش قرار گرفته در رو به روی بخش انتشار اقدام کرده و محتوا را برای تایم مشخصی زمانبدی کنید. به طور معمول این فرآیند بدون هیچ مشکلی دنبال می شود و به محض اینکه زمان تعیین شده فرا برسد، محتوای شما به صورت خودکار منتشر می شود.
اما گاهی نیز این امکان وجود دارد که وردپرس نتواند محتوا را در زمان تعیین شده منتشر کند و شما با خطا زمانبندی از دست رفته وردپرس مواجه می شوید. بدین ترتیب همانند تصویر زیر در منو «همه نوشته ها» و در بخش «تاریخ» مربوط به مقاله مورد نظر پیعامی مبنی بر زمانبندی از دست رفته وردپرس مشاهده می کنید. در این شرایط می توانید به صفحه مربوط به مقاله مربوطه مراجعه کرده و به صورت دستی و با کلیک روی دکمه «انتشار» مقاله را منتشر کنید. اما این کار نمی تواند یک راه حل قطعی برای این مشکل بشمار برود. شما باید با استفاده از راه حل هایی که در ادامه به آنها اشاره می شود مشکل را شناسایی و رفع نمایید.
چرا خطا missed schedule در وردپرس رخ می دهد؟
به طور کلی سیستم مدیریت محتوا وردپرس از کرون جاب (cron job) برای زمانبدی کارهایی که نیاز است در زمان های مشخصی رخ بدهند استفاده می کند. این قابلیت را سیستم های لینوکسی به وب سایت های قرار گرفته روی سرورهای تحت مدیریت خو ارائه می دهد تا بتوانند به راحتی و تنها با زمانبندی این دستور را برای وردپرس صادر کنند که در زمانی مشخص کار مورد نظر را به صورت خودکار انجام دهد. از این قابلیت در بخش های مختلف وب سایت به ویژه بخش انتشار محتوا به صورت زمانبندی استفاده می شود.
حال زمانی که کرون جاب ها کار خود را به درستی انجام ندهند شما با خطا missed schedule یا همان خطا زمانبندی از دست رفته وردپرس مواجه می شوید. به طور معمول برای اینکه کرون جاب ها به درستی اقدام کرده و عملکرد نتیجه بخشی را داشته باشند، باید در زمان تعیین شده برای انتشار خودکار در وب سایت شما بازدیدکننده فعال حضور داشته باشد. به عبارتی دیگر هر زمان که یک بازدیدکننده وارد وب سایت شما می شود، وردپرس کرون جاب های تعیین شده توسط شما را بررسی و مواردی که در صف هستند را شناسایی و اجرا می کنند. اما اگر وب سایت شما در زمان تعیین شده ترافیکی نداشته باشد، وردپرس نمی تواند زمانبندی تعیین شده توسط شما را شناسایی و اجرا نماید. به همین دلیل نیز شما با خطا زمانبندی از دست رفته وردپرس مواجه می شوید. البته در نظر داشته باشید که گاهی نیز به دلیل وجود مشکل در پوشه مربوط به کرون جاب یعنی پوشه wp-cron خطا missed schedule در وردپرس نمایش داده می شود.
خطای زمان بندی از دست رفته در وردپرس
این خطا ممکن است به دلایل مختلفی در سایت شما رخ دهد، پس شما باید قبل از اینکه هر اقدامی انجام دهید، علت وقوع خطا را پیدا کنید و بعدازاینکه دلیل نمایش ارور زمانبندی از دست رفته را پیدا کردید، یک اقدام درست انجام دهید.
در این بخش مواردی که ممکن است باعث این مشکل شده باشد را بررسی خواهیم کرد و برای شما توضیحات مختصری در خصوص هر یک خواهیم داد:
کم شدن حجم ترافیک سایت
اگر صفحه وب شما بهدرستی بارگیری نمیشود، بهطور خودکار ترافیک سایت شما کاهش مییابد. هنگامیکه سایت شما ترافیک کمتری پیدا میکند، کرون جاب انجام نمیشود. (کرون جاب یا Cron Jobs قابلیتی در سیستمهای لینوکسی میباشد که وظیفهی اجرای عملیاتی خاص در زمانبندی خاصی را بهصورت کاملاً اتوماتیک بر عهده دارد).
به بیان ساده اگر Cron Jobs نتواند کار برنامه را بهدرستی انجام دهد، احتمال رخ دادن خطای زمانبندی از دست رفته افزایش مییابد.
بازگذاری نشدن WP-CRON
در وردپرس، Cron Job آدرسهای برنامه را مدیریت میکند، یعنی هنگامیکه برنامهای برای یک پست در وردپرس را تنظیم میکنید، Cron Job این پست را در یک زمان مشخص برنامهریزی شده توسط شما تنظیم میکند. این کار Cron هرزمانی که یک صفحه درخواست میشود، هر بار شروع میشود و توسط WP-CORN کنترل میشود.
گاهی اوقات Cron Job این پست را در زمان برنامهریزی شده منتشر نمیکند، زیرا خطاهای اسکریپت در وردپرس شما وجود دارد. درواقع ممکن است خطای اسکریپت وردپرس باعث رخ دادن این خطا در سایت شما باشد.
رفع خطای Missed Schedule Post در وردپرس
خب حالا که با این خطا و دلایل بروز آن در سایت خود آشنا شدید، بریم سراغ آموزش رفع آن در سایت وردپرسی. شما برای اینکه بتوانید این خطا را در سایت خود برطرف کنید میتوانید از دو روش مختلف استفاده کنید.
در این قسمت برای شما هر دو این روشها را خواهیم گفت و شما میتوانید بهدلخواه خود یکی از این راهحلها را انتخاب و بر روی سایت وردپرسی خود اعمال کنید و مشکل سایت خود را رفع کنید.
استفاده از افزونه برای رفع ارور زمانبندی
اولین روش این است که شما از یک افزونه برای حل این خطا استفاده کنید. یکی از پلاگینهایی که در این زمینه میتواند به شما کمک کند، WP Missed Schedule Posts میباشد.
استفاده از این افزونه سادهترین روشی است که میتوانید از آن استفاده کنید. پلاگین WP Missed Schedule Posts کاملاً رایگان است و شما بهراحتی میتوانید آن را از مخزن وردپرس دانلود و بر روی سایت وردپرسی خود نصب کنید. برای فعال کردن این افزونه میتوانید آموزش نصب افزونه در وردپرس را مشاهده کنید.
بعد از فعالسازی این افزونه، تمامی پستهای زمانبندی شده هر ۱۵ دقیقه بررسی شده و ۲۰ پست در یک زمان منتشر خواهد شد.
راهاندازی CRON Jobs
روش بعدی که میتوانید از آن استفاده کنید راهاندازی CRON Jobs میباشد. استفاده از این روش سایت شما را برای همیشه از شر این مشکل خلاص میکند. درواقع شما در این روش میتوانید با پیکربندی تنظیمات CRON Jobs، این خطا را برای همیشه از بین ببرید.
برای اینکه بتوانید از این روش استفاده کنید باید یک سری تغییرات در فایل wp-config.php اعمال کنید، ازاینرو پیشنهاد میکنیم حتماً قبل از اعمال هر تغییری، یک نسخه پشتیبانی از سایت خود تهیه کنید تا در صورت لزوم بتوانید اطلاعات سایت خود را بازگردانی کنید.
در مرحله اول باید wp-cron.php پیشفرض را غیرفعال کنید، که برای این کار باید وارد پنل مدیریتی هاست خود شوید، برای ورود به هاست خود میتوانید از FTP استفاده کنید. حالا باید مسیر File Manager » Public-html » WP-config.php را طی کنید.
حالا باید قطعه کد زیر را مطابق با تصویر، پس از کدهای دیتابیس جایگذاری و ذخیره کنید:
۱ |
define(‘DISABLE_WP_CRON’, true); |
در محله بعد مجدداً یک CRON Jobs جدید راهاندازی کنید، درهاست آیکون CRON Jobs را پیدا کنید و روی آن کلیک کنید.
با کلیک کردن بر روی این گزینه، یک پنجره جدید برای شما باز خواهد شد که شما باید در فیلد Common Settings گزینه Every Six Hours را از لیست کشویی انتخاب کرده و روی دکمه Add New Cron Job کلیک کنید.
اکنون Cron Job جدید در سایت وردپرسی شما فعال شده و باعث برطرف شدن خطای Missed Schedule Post میشود.
حالا تنها کاری که باید انجام دهید این است که برای Cron Job جدید، زمان موردنظر خودتان را وارد کنید. به همین راحتی! الآن میتوانید بهراحتی پستهای خودتان را برای انتشار، زمانبندی کنید.