حذف خودکار زبالهدان وردپرس با 2 راهکار

حذف خودکار زبالهدان وردپرس یک کار ساده اما بسیار تأثیرگذار در بهبود عملکرد و بهینهسازی سایت است.
وردپرس بهصورت پیشفرض پس از 30 روز زبالهدان را خالی میکند، اما در سایتهایی که حجم محتوای بالایی دارند یا بهطور مداوم در حال بروزرسانی هستند، این بازهٔ زمانی میتواند باعث انباشت دادههای غیرضروری، افزایش حجم پایگاهداده و کندی سایت شود.
این قابلیت مفید است، اما اجازه دادن به انباشته شدن آیتمها میتواند فضای ارزشمند سرور را اشغال کند و در برخی موارد روی سرعت و عملکرد سایت تأثیر بگذارد. مخصوصاً در سایتهایی که محتوای زیادی منتشر یا بهصورت مکرر بهروزرسانی میکنند.
آنچه در این مقاله می خوانید :
زبالهدان (Trash) در وردپرس چیست؟
قابلیت «زبالهدان» از نسخهٔ 2.9 وردپرس اضافه شد و دقیقاً مانند سطل زباله (Recycle Bin) روی کامپیوتر عمل میکند. وقتی یک نوشته یا برگه را حذف میکنید، آن آیتم بلافاصله از پایگاهداده پاک نمیشود؛ بلکه به زبالهدان منتقل میشود تا در صورت حذف اتفاقی بتوانید آن را بازیابی کنید.
هر کسی ممکن است بهصورت تصادفی روی لینک «حذف» کلیک کند؛ بههمیندلیل وردپرس فرآیند بازگشت (restore) را ساده کرده است. با این وجود آیتمهای موجود در زبالهدان تا زمانی که وردپرس آنها را بهطور دائم حذف کند، در پایگاهداده و فضای سرور باقی میمانند که بهصورت پیشفرض پس از 30 روز انجام میشود.
تصویر
این رفتار برای جلوگیری از انباشت طولانیمدت مفید است، اما در سایتهایی که محتوای زیادی منتشر یا ویرایش میکنند ممکن است فضای ذخیره و عملکرد پایگاهداده را تحتتأثیر قرار دهد.
اگر میخواهید وردپرس را طوری تنظیم کنید که زبالهدان را هر روز یا هر بازهٔ دلخواه دیگری خالی کند (یعنی «حذف خودکار زبالهدان وردپرس» با زمانبندی دلخواه)، در ادامه دو روش عملی را بررسی میکنیم:
یکی با استفاده از قطعهکد که کنترل دقیقتری فراهم میکند (پیشنهادی)، و دیگری با استفاده از افزونههای معتبر که کار را ساده میکنند.
اگر هدف شما تنها خالیسازی زبالهدان نیست و میخواهید سرعت سایتتان بهطور کلی افزایش یابد، پیشنهاد می شود از خدمات افزایش سرعت سایت وردپرسی استفاده نمایید.
در این خدمات، علاوه بر بهینهسازی پایگاهداده و کشینگ، مشکلات کدهای قالب و افزونهها بررسی و رفع میشوند تا سایت شما سریعتر بارگذاری شود و تجربه کاربری بهتری برای بازدیدکنندگان فراهم گردد.
روش اول، حذف خودکار زبالهدان وردپرس با کد (پیشنهادی)
در این روش از یک قطعهکد ساده استفاده میکنیم تا حذف خودکار زبالهدان وردپرس را پیادهسازی کنید.
نکته: افزودن مستقیم کد به فایل functions.php قالب ممکن است در صورت وجود یک خطای کوچک، سایت را از دسترس خارج کند. بههمیندلیل پیشنهاد میشود از افزونهٔ WPCode استفاده کنید تا بتوانید کد را امنتر و بدون خطر خراب شدن سایت اضافه کنید.
مراحل اجرای حذف خودکار زبالهدان وردپرس با کد توسط افزونهٔ WPCode
افزونهٔ WPCode را نصب و فعال کنید. سپس از پیشخوان وردپرس به مسیر Code Snippets » + Add Snippet بروید.

زیر بخش «Add Your Custom Code (New Snippet)» روی + Add Custom Snippet کلیک کنید و نوع کد را PHP Snippet انتخاب کنید.

حالا یک عنوان یا نام مشخص برای اسنیپت بنویسید تا بعدها راحت آن را بشناسید. و کد زیر را در کادر «Code Preview» وارد کنید:
define('EMPTY_TRASH_DAYS', 1 ); //Integer is the amount of days

با همین مقدار (1) زبالهدان هر 24 ساعت خالی خواهد شد.
اگر میخواهید بازهٔ دیگری داشته باشید، عدد 1 را به تعداد روز دلخواه تغییر دهید؛ مثلاً:
define('EMPTY_TRASH_DAYS', 15 ); // خالیسازی هر 15 روز
توجه: اگر مقدار را روی 0 قرار دهید، قابلیت زبالهدان بهطور کامل غیرفعال میشود و حذفها بهصورت دائم انجام خواهند شد (بدون انتقال به زبالهدان).
نکته مهم: کار تمام نشده است و برای اجرای کد، مراحل زیر را باید انجام دهید.
در بخش «Insertion» حالت Auto Insert را انتخاب کنید تا اسنیپت بلافاصله پس از فعالسازی روی سایت اجرا شود.

همچنین در بالای صفحه سوییچ اسنیپت را از Inactive به Active تغییر دهید. در نهایت روی Save Snippet کلیک کنید تا تغییرات ذخیره و اجرا شوند.

حالا دیگر حذف خودکار زبالهدان وردپرس با مدت زمان انتخابی شما بصورت خودکار انجام می شود.
پیشنهاد می شود به منظور جلوگیری از اختلال در عملکرد، کرون جاب هاست را فعال نمایید. فعال بودن کرون جاب ضمن جلوگیری از چالش های احتمالی برنامه ریزی شده، باعث افزایش سرعت سایت شما می شود.
همچنین بهتر است قبل از فعالسازی، حتماً یک پشتیبان از سایت (فایلها و پایگاهداده) تهیه کنید تا در صورت حذف اتفاقی بتوانید صفحات یا نوشتههای ضروری را بازیابی کنید.
روش دوم، حذف خودکار زبالهدان وردپرس با افزونه
اگر نمیخواهید هیچ کدی به سایت اضافه کنید، این روش مناسب شماست.
افزونه Change Empty Trash Time را نصب و فعال کنید.
نکته : این افزونه با نسخههای جدید وردپرس تست نشده است. با این حال ما آن را روی سایت خود آزمایش کردیم و ظاهراً بهدرستی کار میکند، در صورت استفاده از افزونههای قدیمی احتیاط کنید.
پس از فعالسازی، به پیشخوان وردپرس و مسیر تنظیمات » عمومی بروید. به پایین صفحه اسکرول کنید تا گزینهٔ جدید Time to empty trash را ببینید.

در این فیلد، تعداد روزهایی را وارد کنید که وردپرس باید پس از آن زبالهدان را خالی کند؛ مثلاً:
- 1 = روزانه
- 7 = هفتگی
- 30 = ماهانه
توجه نمایید اگر مقدار 0 وارد کنید، پستها و برگههای حذفشده بهصورت دائم حذف میشوند و وارد زبالهدان نخواهند شد. و در نهایت روی Save Changes کلیک کنید تا تنظیمات ذخیره شوند.
بهترین روش برای حذف خودکار زبالهدان وردپرس
با استفاده از دو روشی که معرفی کردیم، چه افزودن کد از طریق WPCode و چه استفاده از افزونه Change Empty Trash Time، میتوانید مدیریت زبالهدان را دقیقتر انجام دهید و بازهٔ خالیسازی را متناسب با نیاز خود تنظیم کنید. این کار به آزادسازی منابع سرور، کاهش حجم بکآپها و افزایش سرعت سایت کمک میکند.
به منظور جلوگیری از افزایش حجم پایگاهداده و کندی سایت پیشنهاد می شود مقاله “غیرفعال کردن ذخیره خودکار وردپرس برای بهبود سرعت” از دست ندهید.





