إزالة الموارد التي تحظر العرض

يسرد قسم "فرص التحسين" في تقرير Lighthouse جميع عناوين URL التي تحظر عرض محتوى صفحتك. والهدف هو تقليل تأثير عناوين URL هذه التي تحظر العرض من خلال تضمين الموارد المهمة مباشرةً، وتأجيل الموارد غير المهمة، وإزالة أي عناصر غير مستخدَمة.

لقطة شاشة لعملية التدقيق "إزالة الموارد التي تحظر العرض" في Lighthouse

ما هي عناوين URL التي يتم الإبلاغ عنها كموارد تحظر العرض؟

تضع أداة Lighthouse علامة على نوعَين من عناوين URL التي تحظر العرض: النصوص البرمجية وأوراق الأنماط.

علامة <script> التي:

  • يقع في <head> من المستند.
  • لا يحتوي على سمة defer.
  • لا يحتوي على سمة async.

علامة <link rel="stylesheet"> التي:

  • لا يحتوي على سمة disabled. عند توفّر هذه السمة، لا ينزّل المتصفّح ورقة الأنماط.
  • لا يحتوي على السمة media التي تتطابق مع جهاز المستخدم تحديدًا. يُعدّ media="all" من الموارد التي تحظر العرض.

كيفية تحديد الموارد الأساسية

تتمثّل الخطوة الأولى نحو الحدّ من تأثير الموارد التي تحظر العرض في تحديد الموارد المهمة والموارد غير المهمة. استخدِم علامة التبويب "نسبة استخدام رموز الصفحة" في "أدوات مطوّري البرامج في Chrome" لتحديد ملفات CSS وJS غير المهمة. عند تحميل صفحة أو تشغيلها، تخبرك علامة التبويب بمقدار الرمز المستخدَم مقارنةً بمقدار الرمز الذي تم تحميله:

&quot;أدوات مطوّري البرامج في Chrome&quot;: علامة التبويب &quot;التغطية&quot;
أدوات مطوّري البرامج في Chrome: علامة التبويب "التغطية"

يمكنك تقليل حجم صفحاتك من خلال إرسال الرموز والأنماط التي تحتاج إليها فقط. انقر على عنوان URL لفحص هذا الملف في لوحة "المصادر". يتم تمييز الأنماط في ملفات CSS والرموز في ملفات JavaScript بلونين:

  • أخضر (مهم): الأنماط المطلوبة للرسم الأول، والرموز البرمجية المهمة للوظائف الأساسية للصفحة
  • أحمر (غير مهم): الأنماط التي تنطبق على المحتوى غير المرئي على الفور، والرمز غير المستخدَم في الوظيفة الأساسية للصفحة

كيفية إزالة النصوص البرمجية التي تحظر العرض

بعد تحديد الرمز البرمجي المهم، انقل هذا الرمز من عنوان URL الذي يحظر العرض إلى علامة script مضمّنة في صفحة HTML. عند تحميل الصفحة، ستتضمّن ما تحتاج إليه للتعامل مع الوظائف الأساسية للصفحة.

إذا كان هناك رمز غير مهم في عنوان URL يحظر العرض، يمكنك الاحتفاظ به في عنوان URL، ثم وضع علامة على عنوان URL باستخدام السمتَين async أو defer (راجِع أيضًا إضافة تفاعلية باستخدام JavaScript).

يجب إزالة الرموز التي لا يتم استخدامها على الإطلاق (راجِع إزالة الرموز غير المستخدَمة).

كيفية إزالة أوراق الأنماط التي تحظر العرض

على غرار تضمين الرمز في علامة <script>، يجب تضمين الأنماط الأساسية المطلوبة لعرض أول محتوى في كتلة <style> ضمن head من صفحة HTML. بعد ذلك، حمِّل بقية الأنماط بشكل غير متزامن باستخدام الرابط preload (راجِع تأجيل محتوى CSS غير المستخدَم).

ننصحك بأتمتة عملية استخراج وتضمين CSS "في الجزء الظاهر من الصفحة" باستخدام أداة Critical.

هناك طريقة أخرى للتخلص من الأنماط التي تحظر العرض، وهي تقسيم هذه الأنماط إلى ملفات مختلفة منظَّمة حسب طلب البحث عن الوسائط. بعد ذلك، أضِف سمة وسائط إلى كل رابط لورقة الأنماط. عند تحميل صفحة، يحظر المتصفّح عرض أول طلاء فقط لاسترداد أوراق الأنماط التي تتوافق مع جهاز المستخدم (راجِع CSS التي تحظر العرض).

أخيرًا، عليك تصغير ملف CSS لإزالة أي مساحة بيضاء أو أحرف إضافية (راجِع تصغير ملف CSS). يضمن ذلك إرسال أصغر حِزمة ممكنة إلى المستخدمين.

إرشادات خاصة بحزمة التكنولوجيا

AMP

استخدِم الأدوات، مثل محسِّن AMP في تنسيقات AMP للعرض من جانب الخادم.

Drupal

يمكنك استخدام وحدة لتضمين محتوى CSS أو JavaScript المهم واستخدام سمة التأجيل لمحتوى CSS أو JavaScript غير المهم.

Joomla

هناك عدد من مكوّنات Joomla الإضافية التي يمكنها مساعدتك على تضمين مواد العرض المهمة أو تأجيل الموارد الأقل أهمية.

WordPress

هناك عدد من مكوّنات WordPress الإضافية التي يمكنها مساعدتك على تضمين مواد العرض المهمة أو تأجيل موارد أقل أهمية.

الموارد