با سلام خدمت دوستان عزیز وردپرسی!

همانطور که در مقالات قبلی اشاره کردیم یکی از راه‌های افزایش سرعت سایت و بهینه‌سازی ان از طریق دیتابیس صورت می‌گیرد که می‌توانید با بهینه سازی و کاهش حجم داده‌های نامربوط در آن سرعت سایت را به حد مطلوبی افزایش دهید.

در مقاله پیشین وردپرس به نحوه بهینه‌سازی دیتابیس وردپرس از طریق افزونه wp sweep پرداختیم، حال در این آموزش نیز قصد داریم تا نسبت به بهینه سازی دیتابیس وردپرس از طریق فایل فانکشن بپردازیم. پس تا انتها با ما همراه باشید.

optimiza-database-wordpress

آموزش بهینه سازی دیتابیس وردپرس

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

همانطور که می‌دانید یکی از ویژگی‌های وردپرس این است که به صوت خودکار هنگام نوشتن مطلب در زمان‌های متعدد و منظمی یک رونوشت از آن تهیه می‌کند تا در صورت هرگونه قطع ارتباط با سایت نظیر اختلال در اینترنت و.. یک نسخه از آخرین تغییرات نوشته شما در خود به صورت پیش نویس نگهداری کند. برای اینکه بیشتر با رونوشت‌ها آشنا شوید کافی است تا مطابق تصویر زیر به ویرایش یکی از مطالب خود مراجعه کرده و در بخش انتشار نوشته بر روی بخش رونوشت‌ها کلیک کنید.

autosave_interval-wordpress

بهینه سازی دیتابیس وردپرس

اما به دلیل اینکه این رونوشت به مرور حجم زیادی را از دیتابیس می‌گیرد و در هر بار ویرایش پست نیز به روز می‌شود در سایت‌هایی که دارای مطالب و داده‌هایی با حجم بالا می‌باشند باعث مشکل خواهد شد. لذا ما می‌توانیم رونوشت‌ها را در وردپرس به صورت کامل غیرفعال کرده و یا اینکه زمان هر بار به روزرسانی رونوشت را بیشتر کنیم.

کد غیرفعال کردن رونوشت‌ها در وردپرس

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

برای غیرفعال کردن رونوشت خودکار وردپرس کد زیر را در فایل فانکشن قالب خود قرار دهید.

function disableAutoSave(){
    wp_deregister_script('autosave');
}
add_action( 'wp_print_scripts', 'disableAutoSave' );

بهینه سازی دیتابیس با تغییر زمان ذخیره خودکار نوشته

اما اگر می‌خواهید تا ذخیره خودکار نوشته در وردپرس را به صورت کامل غیرفعال نکنید می‎توانید با تغییر مدت زمان هر ذخیره خودکار حجم داده‌هایی را که برای رونوشت‌ها از دیتابیس گرفته می‌شود را تا حد محسوسی کاهش دهید. برای این منظور کد زیر را در جای مناسبی از فایل wp-congig.php خود قرار دهید.

define('AUTOSAVE_INTERVAL', 300 ); // seconds
define('WP_POST_REVISIONS', false );

همانطور که در کد بالا می‌بینید ما مدت زمان ۳۰۰ ثانیه را برای هر بار ذخیره کردن از نوشته تعیین کرده‌ایم، شما نیز می‌توانید به راحتی با تغییر عدد مورد نظر بر حسب ثانیه مدت زمان دلخواه خود را تعیین کنید.

بهینه سازی دیتابیس با حذف رونوشت‌ها در وردپرس

هم اکنون که این مقاله را مشاهده می‎کنید حتما تعداد زیادی مطالب در سایت شما قرار دارد، لذا رونوشت‌های زیادی در دیتابیس سایت وردپرسی شما ذخیره شده است.

شاید پیش خود فکر کنید که: “ای دل غافل! حال با این تعداد رونوشت که در سایت قرار دارد چکار کنم؟! :(  

همینجا خیالتان را راحت کنیم که امکان حذف رونوشت‌ها در وردپرس نیز به آسانی وجود دارد، کافی‌است تا مطابق تصویر زیر وارد پیشخوان سایت وردپرسی خود شده و به بخش نمایش> ویرایشگر مراجعه کرده و فایل توابع وردپرس (functions.php) را انتخاب کرده و مطابق تصویر زیر کد زیر را در آخرین خط قرار داده و بر روی ذخیره تغییرات کلیک کنید.

optimize-autosave_interval-in-wordpress

آموزش حذف رونوشت در وردپرس

$wpdb->query( "
DELETE FROM $wpdb->posts
WHERE post_type = 'revision'
" );

نکته: مثل همیشه دقت داشته باشید تا یک کپی از فایل فانکشن خود داشته باشید تا در صورت اشتباه بتوانید به راحتی به حالت قبل برگردید!

پس از اینکه تغییرات را ذخیره کردید صفحه اصلی سایت خود را یک بار باز کرده و ترجیحا از کلید ترکیبی CTRL + F5 و یا F5 یک بار صفحه سایت را ریلود نمایید، سپس کد را مجددا برداشته و فایل فانکشن را به حالت قبل برگردانید، مجددا به ویرایش یکی از نوشته‌ها مراجعه نمایید خواهید دید که دیگر هیچ رونوشتی برای نوشته (ها) وجود نخواهد داشت.

منبع: wpbeginner

شاد باشید .. :)

امتیاز شما از 1 تا 5
1 ستاره میدم به نوشته2 ستاره میدم به نوشته3 ستاره میدم به نوشته4 ستاره میدم به نوشته5 ستاره میدم به نوشته 2 رای
Loading...