بهینه سازی دیتابیس وردپرس از طریق رونوشتها
با سلام خدمت دوستان عزیز وردپرسی!
یکی از راههایی که میتوان از طریق آن سرعت و امنیت سایت را افزایش داد از طریق بهینه سازی دیتابیس صورت میگیرد که میتوانید با بهینه سازی و کاهش حجم دادههای نامربوط در آن سرعت و امنیت سایت را به حد مطلوبی افزایش دهید.
در مقاله پیشین وردپرس به نحوه افزایش سرعت سایت با استفاده از قابلیت cookie free-domain پرداختیم، حال در این آموزش قصد داریم تا نسبت به بهینه سازی دیتابیس وردپرس از طریق فایل فانکشن و فایل کانفیگ بپردازیم. پس تا انتها با ما همراه باشید.
رونوشت وردپرس چیست؟
قبل از شروع کار بیایید ببینیم اصلا منظور از رونوشت چیست؟!
همانطور که میدانید یکی از ویژگیهای وردپرس این است که به صوت خودکار هنگام نوشتن مطلب در زمانهای معین شده و منظمی یک رونوشت یا ذخیره خودکار از آن تهیه میشود تا در صورت هرگونه قطع ارتباط با سایت نظیر اختلال در اینترنت و.. یک نسخه از آخرین تغییرات نوشته شما در خود به صورت پیش نویس نگهداری کند. برای اینکه بیشتر با رونوشتها آشنا شوید کافی است تا مطابق تصویر زیر به ویرایش یکی از مطالب خود مراجعه کرده و در بخش انتشار نوشته بر روی بخش رونوشتها کلیک کنید.
پس از اینکه بر روی رونوشتهای نوشته کلیک کردید وارد صفحهای مشابه تصویر زیر خواهید شد که در آن میتوانید تمامی رونوشتها را با اسکرول کردن نوار مشخص شده در تصویر مشاهده و جهت ویرایش بازیابی کنید.
اما به دلیل اینکه این رونوشت به مرور حجم زیادی را از دیتابیس میگیرد و در هر بار ویرایش پست نیز به روز میشود در سایتهایی که دارای مطالب و دادههایی با حجم بالا میباشند باعث مشکل خواهد شد. لذا ما میتوانیم رونوشتها را در وردپرس به صورت کامل غیرفعال کرده و یا اینکه زمان هر بار به روزرسانی رونوشت را بیشتر کنیم.
کد غیرفعال کردن رونوشتها در وردپرس
با استفاده از کد زیر میتوانید رونوشتهای وردپرس را به صورت کامل غیرفعال کنید، دقت داشته باشید که با غیرفعال شدن رونوشت هیچگونه تغییراتی به صورت خودکار در نوشته شما تا زمانی که به صورت دستی آن را در حالت پیش نویس و یا انتشار قرار ندهید، ذخیره نخواهد شد.
برای غیرفعال کردن رونوشت خودکار وردپرس کد زیر را در فایل فانکشن (functions.php) قالب خود قرار دهید:
function disableAutoSave(){ wp_deregister_script('autosave');}add_action( 'wp_print_scripts', 'disableAutoSave' );
بهینه سازی دیتابیس با تغییر زمان ذخیره خودکار نوشته
اما اگر میخواهید تا ذخیره خودکار نوشته در وردپرس را به صورت کامل غیرفعال نکنید میتوانید با تغییر مدت زمان هر ذخیره خودکار، حجم دادههایی را که برای رونوشتها از دیتابیس گرفته میشود را تا حد محسوسی کاهش دهید. برای این منظور کد زیر را در جای مناسبی از فایل wp-config.php خود قرار دهید.
نکته: مثل همیشه یک کپی از فایل wp-config.php داشته باشید تا در صورت هرگونه مشکلی بتوانید وضعیت را به حالت قبل برگردانید!
define('AUTOSAVE_INTERVAL', 300 ); // secondsdefine('WP_POST_REVISIONS', false );
همانطور که در کد بالا میبینید ما مدت زمان 300 ثانیه را برای هر بار ذخیره کردن از نوشته تعیین کردهایم، شما نیز میتوانید به راحتی با تغییر عدد مورد نظر بر حسب ثانیه مدت زمان دلخواه خود را تعیین کنید.
بهینه سازی دیتابیس با حذف رونوشتها در وردپرس
هم اکنون که این مقاله را مشاهده میکنید حتما تعداد زیادی مطلب در سایت شما قرار دارد، لذا رونوشتهای زیادی در دیتابیس سایت وردپرسی شما ذخیره شده است.
شاید پیش خود فکر کنید که: “ای دل غافل! حالا با این همه رونوشت که تو سایته چکار کنم؟! 🙁 “
همینجا خیالتان را راحت کنیم که امکان حذف رونوشتها در وردپرس نیز به آسانی وجود دارد ! ، کافیاست تا مطابق تصویر زیر وارد پیشخوان سایت وردپرسی خود شده و به بخش نمایش> ویرایشگر مراجعه کرده و فایل توابع وردپرس (functions.php) را انتخاب کرده و کد زیر را در آخرین خط قرار داده و بر روی ذخیره تغییرات کلیک کنید.
$wpdb->query( "DELETE FROM $wpdb->postsWHERE post_type = 'revision'" );
نکته: مثل همیشه دقت داشته باشید تا یک کپی از فایل فانکشن خود داشته باشید تا در صورت اشتباه بتوانید به راحتی به حالت قبل برگردید!
پس از اینکه تغییرات را ذخیره کردید صفحه اصلی سایت خود را یک بار باز کرده و ترجیحا با استفاده از کلیدهای ترکیبی CTRL + F5 ، CTRL + R و یا F5 یک بار صفحه سایت را ریلود نمایید، سپس کد را مجددا برداشته و فایل فانکشن را به حالت قبل برگردانید، مجددا به ویرایش یکی از نوشتهها مراجعه نمایید، خواهید دید که دیگر هیچ رونوشتی برای نوشته (ها) وجود ندارد.
منبع: wpbeginner
شاد باشید