حذف نوشته بعد از زمان مشخص در وردپرس
- افزونه وردپرسمقالات آموزشی
- بروزرسانی شده در

اگه تخفیف، اطلاعیه، آگهی یا صفحهای دارید که فقط تا زمان مشخصی کاربرد داره، لازم نیست روز انقضای اون دوباره وارد سایت بشید و دستی حذفش کنید. با افزونه PublishPress Future میتونید از قبل مشخص کنید که وردپرس در تاریخ دلخواه، نوشته رو پیشنویس یا خصوصی کنه، به زبالهدان بفرسته یا، اگه این گزینه در نسخه افزونه شما در دسترس بود، برای همیشه حذف کنه.
در این آموزش، حذف خودکار نوشته بعد از زمان مشخص در وردپرس رو قدمبهقدم تنظیم میکنیم. منظور از «حذف» در این مقاله فقط پاک کردن دائمی نیست و خارج کردن نوشته از دسترس عمومی رو هم شامل میشه. همینطور فرق روشهای مختلف انقضا، تنظیمات پیشفرض، نقش WP-Cron و راههای رفع مشکل اجرا نشدن زمانبندی رو توضیح میدیم. برای مدیریت بخشی از محتوا هم یک راه امن پیشنهاد میکنیم تا مجبور نشید از افزونهها و شورتکدهای قدیمی استفاده کنید.
آنچه در این مقاله میخوانید
حذف خودکار نوشته بعد از زمان مشخص در وردپرس چه کاربردی داره؟
این قابلیت برای محتوایی مناسبه که تاریخ مصرف مشخصی داره. برای نمونه، میتونید یک کد تخفیف رو بعد از پایان جشنواره بردارید، اطلاعیه ثبتنام رو پس از بسته شدن فرم مخفی کنید یا آگهی موقت رو در تاریخ تعیینشده به زبالهدان بفرستید.
- پیشنهادها و کدهای تخفیف محدود
- اطلاعیه وبینار، همایش یا رویداد
- آگهی استخدام یا فروش موقت
- برگه ثبتنامی که مهلت مشخصی داره
- مطلبی که بعد از تاریخ خاصی نباید عمومی بمونه
انقضای نوشته همیشه به معنی پاک شدن اون نیست. شما میتونید بعد از رسیدن زمان انقضا، وضعیت نوشته رو عوض کنید و نسخه اون رو در پیشخوان نگه دارید. این انتخاب برای محتوای مهم خیلی امنتره.
- پیشنویس: نوشته از سایت کنار میره، ولی همچنان میتونید اون رو ویرایش و دوباره منتشر کنید.
- خصوصی: نوشته عمومی نیست، ولی مدیران و کاربران دارای دسترسی مناسب میتونن اون رو ببینن.
- زبالهدان: نوشته به زبالهدان میره و تا قبل از پاک شدن زبالهدان امکان بازیابی اون رو دارید.
- حذف دائمی: نوشته بدون رفتن به زبالهدان پاک میشه و برگردوندن اون معمولاً فقط با نسخه پشتیبان ممکنه.
قبل از حذف خودکار نوشته چه نکاتی رو باید بدونید؟
قبل از شروع، از فایلها و پایگاه داده سایتتون نسخه پشتیبان بگیرید. اگه نوشته مهمی اشتباهی پاک بشه، نسخه پشتیبان مطمئنترین راه برگشت اطلاعاته. بهتره اولین آزمایش رو هم روی یک نوشته آزمایشی انجام بدید، نه روی محتوای اصلی سایت.
بعد به مسیر «تنظیمات ← عمومی» برید و بخش «منطقه زمانی» رو بررسی کنید. تاریخ و ساعت انقضا بر پایه زمان تنظیمشده در وردپرس اجرا میشه. بهتره شهر نزدیک به محل فعالیتتون، مثل تهران، رو انتخاب کنید و به اختلاف دستی UTC تکیه نکنید.
قبل از منقضی کردن یک صفحه، ورودی گوگل، لینکهای داخلی و لینکهایی که سایتهای دیگه به اون دادهان رو بررسی کنید. پیشنویس، خصوصی یا حذف کردن صفحه ممکنه آدرس اون رو برای بازدیدکننده به صفحه ناموجود یا خطای ۴۰۴ تبدیل کنه. اگه صفحه جایگزین مرتبطی دارید، بهتره ریدایرکت مناسب تنظیم کنید؛ یعنی بازدیدکننده و موتور جستجو رو از آدرس قدیمی به صفحه مرتبط تازه بفرستید. صفحه قدیمی رو به صفحه اصلی یا یک مقصد نامرتبط هدایت نکنید.
اجرای زمانبندی وردپرس به WP-Cron وابستهست. WP-Cron سامانه داخلی وردپرس برای انجام کارهای زماندار، مثل انتشار نوشته زمانبندیشده یا اجرای اقدام انقضاست. این سامانه معمولاً هنگام دریافت بازدید، کارهای عقبافتاده رو بررسی میکنه. پس در سایتهای کمترافیک ممکنه عملیات تا زمان بازدید بعدی یا اجرای cron سرور عقب بیفته. توضیحات فنی این سازوکار رو میتونید در راهنمای رسمی WP-Cron ببینید.
نصب افزونه PublishPress Future
برای این آموزش از افزونه PublishPress Future استفاده میکنیم. این افزونه قبلاً با نام Post Expirator شناخته میشد، ولی نسخه فعلی اون با نام PublishPress Future در مخزن وردپرس در دسترسه.
- در پیشخوان وردپرس به «افزونهها ← افزودن افزونه تازه» برید.
- عبارت
PublishPress Futureرو در کادر جستجو وارد کنید. - افزونه منتشرشده توسط PublishPress رو پیدا کنید و دکمه نصب اون رو بزنید.
- بعد از پایان نصب، دکمه فعالسازی افزونه رو بزنید.

بعد از فعالسازی، تنظیمات PublishPress Future به پیشخوان اضافه میشه. وارد تنظیمات افزونه بشید و بخش مربوط به نوع محتواها رو پیدا کنید. اگه نوع محتوای موردنظرتون در این بخش نمایش داده شد، قابلیت Future Action رو برای اون فعال کنید.
Future Action یعنی کاری که افزونه در آینده و در زمان تعیینشده روی محتوا انجام میده. نام دقیق گزینهها، محل اونها و امکانات در دسترس ممکنه با توجه به نسخه رایگان یا Pro افزونه، نسخه افزونه و زبان پیشخوان فرق داشته باشه.
حذف خودکار نوشته بعد از زمان مشخص در وردپرس
- از منوی «نوشتهها»، مطلب موردنظرتون رو برای ویرایش باز کنید.
- در نوار کناری ویرایشگر، بخش PublishPress Future یا عملیات آینده رو پیدا کنید.
- گزینه فعالسازی اقدام آینده رو روشن کنید.
- تاریخ و ساعت انقضای نوشته رو انتخاب کنید.
- از بین اقدامهای موجود در نسخه افزونه شما، مشخص کنید بعد از انقضا چه اتفاقی بیفته.
- نوشته رو بهروزرسانی یا منتشر کنید تا زمانبندی ذخیره بشه.

بعد از ذخیره، دوباره بخش Future Action رو بررسی کنید. تاریخ، ساعت و اقدام انتخابشده باید همون چیزی باشه که تعیین کردید. اگه این اطلاعات ذخیره نشده، قبل از بستن صفحه دوباره اونها رو تنظیم کنید.
تبدیل نوشته به پیشنویس
با انتخاب Draft، نوشته از بخش عمومی سایت کنار میره و به حالت پیشنویس برمیگرده. این گزینه برای بیشتر سایتها انتخاب امنی محسوب میشه، چون محتوا حذف نمیشه و هر وقت لازم باشه میتونید اون رو دوباره ویرایش یا منتشر کنید.
خصوصی کردن نوشته
گزینه Private نوشته رو خصوصی میکنه. بازدیدکنندههای عادی دیگه اون رو نمیبینن، ولی کاربران دارای دسترسی لازم میتونن از داخل سایت یا پیشخوان به اون دسترسی داشته باشن. این روش برای نگهداری سابقه اطلاعیهها یا اسناد داخلی کاربردیه.
فرستادن نوشته به زبالهدان
با انتخاب Trash، نوشته بعد از انقضا وارد زبالهدان میشه. تا وقتی زبالهدان پاک نشده، میتونید نوشته رو بازیابی کنید. امکان بازیابی همیشگی نیست؛ چون زمان نگهداری زبالهدان ممکنه با تنظیمات وردپرس یا ابزارهای نگهداری سایت تغییر کنه.
حذف دائمی نوشته
اگه گزینه Delete در نسخه افزونه شما در دسترس باشه، نوشته رو برای همیشه حذف میکنه و اون رو به زبالهدان نمیفرسته. این گزینه رو فقط وقتی انتخاب کنید که نسخه پشتیبان مطمئن دارید و از پاک شدن محتوا کاملاً مطمئن هستید. برای شروع، پیشنویس یا زبالهدان ریسک کمتری داره.
تغییر دستهبندی یا وضعیت سنجاقشدن
بسته به نسخه و تنظیمات PublishPress Future، ممکنه اقدامهایی برای تغییر دستهبندی نوشته یا برداشتن حالت سنجاقشده هم ببینید. برای نمونه، میتونید خبرهای قدیمی رو به دسته «آرشیو» منتقل کنید، بدون اینکه خود نوشته حذف بشه. قبل از تکیه کردن به این قابلیت، در دسترس بودن اون رو روی نسخه نصبشده خودتون بررسی کنید.
تنظیم پیشفرض تاریخ انقضا برای نوشتهها
اگه بیشتر نوشتههای موقت سایتتون الگوی مشابهی دارن، تنظیم پیشفرض باعث میشه هر بار تاریخ و اقدام رو از اول انتخاب نکنید. برای این کار، وارد تنظیمات PublishPress Future بشید و بخش تنظیمات پیشفرض رو پیدا کنید. نام و جای این بخش ممکنه در نسخههای مختلف فرق داشته باشه.

- نوع محتوا، مثل نوشته یا برگه، رو انتخاب کنید.
- مشخص کنید قابلیت اقدام آینده برای اون نوع محتوا فعال باشه یا نه.
- اگه نسخه افزونه این امکان رو داره، زمان پیشفرض انقضا رو تعیین کنید؛ برای نمونه، چند روز بعد از انتشار.
- اقدام پیشفرض، مثل تبدیل به پیشنویس یا انتقال به زبالهدان، رو انتخاب کنید.
- تنظیمات رو ذخیره کنید و یک نوشته آزمایشی بسازید.

اگه تنظیم جداگانه نوع محتوا در نسخه افزونه شما در دسترسه، میتونید برای نوشتهها، برگهها و نوعهای محتوای دیگه رفتار متفاوتی انتخاب کنید. مثلاً نوشتهها بعد از ۳۰ روز پیشنویس بشن، ولی برگهها تاریخ انقضای خودکار نداشته باشن. قبل از فعال کردن انقضای پیشفرض برای همه محتواها، نتیجه رو روی یک نمونه آزمایش کنید.
چطور مطمئن بشیم نوشته در زمان مشخص حذف میشه؟
برای آزمایش، یک نوشته موقت بسازید و زمان انقضای اون رو چند دقیقه بعد قرار بدید. بهتره اقدام «تبدیل به پیشنویس» رو انتخاب کنید تا چیزی برای همیشه پاک نشه. نوشته رو منتشر کنید و بعد از زمان تعیینشده، وضعیت اون رو در پیشخوان بررسی کنید.
- منطقه زمانی وردپرس رو از «تنظیمات ← عمومی» دوباره بررسی کنید.
- مطمئن بشید Future Action برای همون نوشته فعال و ذخیره شده.
- برای یک آزمایش ساده، صفحه عمومی سایت رو باز کنید تا WP-Cron فرصت بررسی کار زمانبندیشده رو داشته باشه.
- در سایت کمترافیک، تأخیر احتمالی تا بازدید بعدی یا اجرای cron سرور رو در نظر بگیرید.
- بعد از اجرا، وضعیت نوشته و هر گزارش در دسترسی که افزونه نشون میده رو بررسی کنید.
باز کردن صفحه سایت فقط برای آزمایش اولیه کاربرد داره و راهحل قابلاتکایی برای اجرای منظم سایت واقعی نیست. اگه اجرای دقیق در ساعت مشخص برای کسبوکارتون مهمه، از پشتیبان هاست بخواید امکان اجرای منظم cron واقعی سرور رو بررسی کنه. cron سرور برنامهایه که بدون نیاز به بازدید کاربر، در فاصلههای زمانی ثابت فرمانهای زمانبندیشده رو اجرا میکنه. تنظیم اشتباه اون میتونه روی بخشهای دیگه سایت اثر بذاره، پس بهتره این کار رو فرد آشنا با مدیریت هاست انجام بده.
اگه حذف خودکار نوشته اجرا نشد، چی کار کنیم؟
اول خود نوشته رو باز کنید و ببینید Future Action هنوز فعاله یا نه. تاریخ باید در آینده تنظیم شده باشه و اقدام انتخابشده هم باید بعد از ذخیره در پنل دیده بشه. بعد منطقه زمانی سایت رو با ساعت موردانتظارتون مقایسه کنید.
- کش سایت رو پاک کنید: شاید نوشته منقضی شده باشه، ولی افزونه کش هنوز نسخه قدیمی صفحه رو نشون بده.
- WP-Cron رو بررسی کنید: بعضی تنظیمات امنیتی یا بهینهسازی، اجرای اون رو محدود میکنن.
- افزونهها رو بررسی کنید: تداخل یک افزونه امنیتی، کش یا مدیریت زمانبندی میتونه جلوی اجرا رو بگیره.
- خطاهای وردپرس رو بررسی کنید: گزارش خطا یا بخش سلامت سایت ممکنه مشکل اجرای درخواستهای زمانبندیشده رو نشون بده.
- از پشتیبان هاست کمک بگیرید: از اونها بخواید مسدود نبودن درخواستهای cron و نبود خطای سرور رو بررسی کنن.
برای پیدا کردن تداخل، افزونهها رو روی سایت اصلی یکییکی غیرفعال نکنید. اگه هاست یا ابزار مدیریت سایتتون محیط staging داره، از اون استفاده کنید. staging کپی جداگانهای از سایته که تغییرات روی اون به بازدیدکنندههای سایت اصلی نمایش داده نمیشه. اگه چنین محیطی ندارید، از پشتیبان هاست درباره روش امن آزمایش بپرسید.
مدیریت بخشی از محتوا بعد از زمان مشخص
PublishPress Future برای اجرای اقدام روی کل نوشته یا برگه ساخته شده. اگه فقط میخواید یک کد تخفیف، پیام یا دکمه بعد از زمان خاصی مخفی بشه، نباید کل نوشته رو منقضی کنید.
راه ساده و کمریسک اینه که بخش موقت رو داخل یک بلوک جدا قرار بدید و در پایان مهلت، همون بلوک رو دستی بردارید. همزمان یک یادآور در تقویم یا ابزار مدیریت کار تنظیم کنید. برای تخفیفهای فروشگاهی هم بهتره تاریخ پایان رو داخل خود سامانه فروش یا کد تخفیف تعیین کنید تا حتی اگه متن صفحه باقی موند، تخفیف بعد از موعد قابلاستفاده نباشه.
اگه تعداد این محتواها زیاده و حتماً به مخفیسازی خودکار نیاز دارید، افزونه یا ابزاری رو انتخاب کنید که بهطور مشخص زمانبندی نمایش بلوکها رو پشتیبانی کنه. قبل از نصب، تاریخ آخرین بهروزرسانی، سازگاری با نسخه وردپرس، پشتیبانی از ویرایشگر فعلی و روش پاکسازی دادههای افزونه رو بررسی کنید.
شورتکد قطعه کوتاهی مثل [example] هست که افزونه اون رو به محتوای خاص تبدیل میکنه. شورتکدهای ناشناخته یا مربوط به افزونههای بدون پشتیبانی رو داخل محتوای اصلی قرار ندید. اگه افزونه از کار بیفته، ممکنه خود متن شورتکد به بازدیدکننده نمایش داده بشه یا محتوای موقت در صفحه باقی بمونه.
سؤالهای رایج درباره حذف خودکار نوشته در وردپرس
آیا نوشته بعد از انقضا برای همیشه پاک میشه؟
نه، نتیجه به اقدامی بستگی داره که انتخاب کردید. نوشته میتونه پیشنویس یا خصوصی بشه، به زبالهدان بره یا، اگه این گزینه در نسخه افزونه شما در دسترس باشه، برای همیشه حذف بشه.
میشه نوشته منقضیشده رو دوباره برگردوند؟
بله، اگه نوشته پیشنویس، خصوصی یا هنوز داخل زبالهدان باشه، میتونید اون رو برگردونید. برای نوشتهای که برای همیشه حذف شده، معمولاً به نسخه پشتیبان نیاز دارید.
میشه برای برگهها و نوع نوشته سفارشی هم تاریخ انقضا گذاشت؟
PublishPress Future میتونه برای چند نوع محتوا در دسترس باشه، ولی باید نوع محتوای موردنظرتون رو در تنظیمات نسخه نصبشده بررسی و فعال کنید. بعضی نوعهای محتوای سفارشی ممکنه رفتار متفاوتی داشته باشن.
چرا نوشته دقیقاً سر ساعت حذف نشده؟
اجرای زمانبندی به WP-Cron وابستهست و در سایتهای کمترافیک ممکنه تا بازدید بعدی یا اجرای cron سرور عقب بیفته. منطقه زمانی، فعال بودن Future Action و وضعیت WP-Cron رو بررسی کنید.
برای جلوگیری از حذف اشتباهی کدوم گزینه بهتره؟
تبدیل نوشته به پیشنویس معمولاً امنترین انتخابه، چون محتوا از سایت کنار میره ولی در پیشخوان باقی میمونه و میتونید دوباره اون رو منتشر کنید.
جمعبندی
برای بیشتر سایتها، تبدیل خودکار نوشته به پیشنویس انتخاب مناسبیه. بعد از اینکه چند بار زمانبندی رو با موفقیت آزمایش کردید و از نسخه پشتیبان مطمئن شدید، میتونید برای محتوای کماهمیت از زبالهدان یا، اگه این قابلیت در نسخه افزونه شما در دسترس بود، حذف دائمی استفاده کنید. قبل از خارج کردن هر صفحه پربازدید از دسترس هم ارزش سئویی، لینکهای ورودی و نیاز به ریدایرکت اون رو بررسی کنید.

با سلام
آیا برای هر پست تایپی میشه این کار رو کرد؟
با اینکه خیلی وقته از سوالت میگذره اما به خاطر اینکه تو محتوای بلاگ نبود و شاید سوال یه سری ها هم باشه جواب میدم
بله در انواع پست تایپ جواب میده این قضیه. من همین الان تست کردم
موفق باشید