افزایش سرعت وردپرس

بهینه سازی سرعت صفحات وردپرس با حذف هوک افزونه ها

کم بودن حجم و بهینه‌بودن محتوای HTML و CSS یکی از کلیدی‌ترین فاکتورها در تجربه کاربری و سئوی فنی است.

زمانی که مرورگر کاربر درخواستی به سرور ارسال می‌کند، باید تمام کدهای HTML، CSS و JavaScript مربوط به صفحه را دریافت، پردازش و رندر کند. هرچه این کدها حجیم‌تر و دارای المان‌های غیرضروری بیشتری باشند، زمان دانلود و پردازش آنها توسط مرورگر افزایش یافته و در نهایت زمان بارگذاری کامل صفحه (Full Load Time) به طور محسوسی بیشتر می‌شود.

این تأخیر نه‌تنها رضایت کاربر را کاهش می‌دهد، بلکه به طور مستقیم بر امتیاز سئوی صفحه در موتورهای جستجو مانند گوگل نیز تأثیر منفی می‌گذارد.

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

برای مثال، ممکن است یک افزونه فرم لاگین، کتابخانه‌های CSS و JS سنگین خود را حتی در صفحه اصلی سایت که هیچ فرمی وجود ندارد، بارگذاری کند. این امر منجر به ایجاد درخواست‌های HTTP اضافی، Blocking Render و افزایش حجم کلی صفحه می‌گردد. شناسایی و حذف این منابع غیرضروری، بدون مختل کردن عملکرد اصلی افزونه در صفحاتی که واقعاً به آن نیاز دارند، قدم بزرگی در بهینه‌سازی سرعت و رسیدن به یک معماری سبک‌وزن است.

قدم اول: شناسایی هوک‌های غیرضروری با افزونه Query Monitor

برای شروع، نیاز به یک ابزار داریم تا بتوانیم هوک‌های در حال اجرا را مشاهده کنیم. افزونه Query Monitor بهترین انتخاب برای این کار است.

  1. افزونه Query Monitor را از مخزن وردپرس نصب و فعال کنید.
  2. به هر صفحه از سایت خود (مثلاً صفحه اصلی) بروید.
  3. بر روی آیکون Query Monitor در نوار ابزار کلیک کنید.
  4. به تب “Hooks & Actions” بروید.

در این بخش، لیست کاملی از تمام هوک‌ها و اکشن‌هایی که در حال حاضر در صفحه در حال اجرا هستند، مشاهده می‌کنید. برای پیدا کردن هوک‌های مربوط به یک افزونه خاص (مثلاً digits)، از کادر جستجو استفاده کنید.

قدم دوم: تحلیل و یادداشت‌برداری هوک‌ وردپرس

هوک‌هایی که معمولاً بر حجم صفحه تأثیر می‌گذارند، آنهایی هستند که منابع را به wp_head یا wp_footer اضافه می‌کنند. در لیست Query Monitor به دنبال مواردی مانند add_inline_style، wp_enqueue_style، و wp_enqueue_script باشید که توسط افزونه هدف (مثلاً digits) صدا زده شده‌اند.
مقاله زیر رو که در مورد آموزش کامل اکشن و فیلتر های وردپرس هست حتما مطالعه کنید:

حتما بخوانید : هوک وردپرس و استفاده از اکشن و فیلتر در توسعه پذیری وردپرس

برای هر هوکی که پیدا می‌کنید، سه پارامتر کلیدی را یادداشت کنید:

  • نام هوک (Hook Name): مثلاً wp_head
  • نام تابع (Function Name): مثلاً digits_login
  • اولویت (Priority): مثلاً 10 یا 100

قدم سوم: حذف هوک در وردپرس با remove_action

حال نوبت به نوشتن کد می‌رسد. بهترین روش برای این کار، ایجاد یک Must-Use Plugin (mu-plugins) است تا تغییرات مستقل از قالب و سایر افزونه‌ها باقی بمانند.

  1. در پوشه wp-content ، یک پوشه جدید به نام mu-plugins ایجاد کنید (اگر از قبل وجود ندارد).
  2. درون این پوشه، یک فایل جدید با نامی مانند remove-unused-hooks.php ایجاد کنید.
  3. کد زیر را درون آن قرار دهید:
function optimize_remove_unused_hooks() {
    if ( ! is_user_logged_in() and ! isset( $_GET['login'] ) ) {
          remove_action('wp_enqueue_scripts', 'digits_add_style', 10);
          remove_action('wp_enqueue_scripts', 'digits_add_scripts', 9999);
          remove_action('wp_footer', 'digits_load_font', 10);
          remove_action('wp_footer', 'digits_main_ui_modal', 10);
          remove_action('wp_loaded', 'digits_login', 100);
    }
}
add_action( 'init', 'optimize_remove_unused_hooks' );
مهرشاد درزی

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

انتشار
انتشار توسط
مهرشاد درزی

آخرین مطالب

اعمال قیمت فوق العاده محصولات ووکامرس به عنوان تخفیف سفارشات

همان طور که می دانید افزونه ووکامرس درنسخه های اخیر یک تغییر عمده در سفارشات…

3 هفته پیش

هماهنگ کردن محصولات ووکامرس با نرم افزار حسابداری

در زمان تهیه افزونه های وردپرس برای اتصال نرم افزار حسابداری به سیستم فروشگاهی ووکامرس…

3 هفته پیش

هوش مصنوعی در وردپرس

بالاخره در نسخه ی وردپرس 7.0 سرویس اتصال به سرویس هی خارجی مانند هوش مصنوعی…

1 ماه پیش

معرفی بهترین افزونه‌های پشتیبانی وردپرس

تا به حال شده با دل‌نگرانی در داشبورد سایت وردپرسی‌تان بنشینید، چون بخشی از سایت…

9 ماه پیش

هماهنگی محتوا و پشتیبانی سایت؛ چطور تیم فنی را با محتوا هم‌راستا کنیم؟

شاید شما هم این صحنه را دیده باشید که تیم محتوا با شوق فراوان مقاله‌ای…

9 ماه پیش

چگونه از افت رتبه سایت در گوگل جلوگیری کنیم؟

صبح زود از خواب بیدار می‌شوید، قهوه‌تان را برمی‌دارید و مثل همیشه سری به سرچ…

9 ماه پیش
برای نمایش نسخه اصلی این صفحه اینجا لمس کنید