Alejandro Rioja.
Scripts

أفضل النصائح لإصلاح مشاكل CLS في Search Console

Alejandro Rioja
Alejandro Rioja
7 د قراءة
TL;DR

لا يزال CLS (Cumulative Layout Shift) أحد ثلاثة Core Web Vitals من Google إلى جانب LCP وINP (الذي حلّ محل FID في مارس 2024). أصلحه بإضافة سمات الحجم إلى الصور والعناصر المضمّنة، وحجز مساحة لإعلانات، وتجنّب حقن المحتوى فوق الطية، واستخدام font-display: swap.

نشرة بريدية مجانية

كل أربعاء. أكثر من 28,400 مشترك. بدون حشو.

Table of contents

Open Table of contents

CLS: الخلفية

يقيس Cumulative Layout Shift حركات التخطيط غير المتوقعة. في كل مرة ينتقل فيها عنصر مرئي من موضعه أثناء تحميل الصفحة أو التفاعل معها، تُحسَب درجة إزاحة تخطيط. الدرجة التراكمية هي CLS.

الأسباب الشائعة:

ذات صلة: كيفية إصلاح مشاكل LCP في Search Console

قياس CLS

Google Search Console

تقرير Core Web Vitals في Search Console هو نقطة البداية. يعرض الصفحات المُعلَّمة بـ “ضعيف” (CLS ≥ 0.25) أو “يحتاج إلى تحسين” (0.1–0.25)، مجمّعةً حسب نوع المشكلة. استخدم هذا التقرير للحصول على قائمة عناوين URL المتأثرة.

PageSpeed Insights

يعرض PageSpeed Insights (PSI) بيانات المختبر (محاكاة Lighthouse) وبيانات الحقل من المستخدمين الفعليين عبر Chrome UX Report (CrUX). بيانات الحقل أهم لأغراض التصنيف — فهي تعكس تجارب المستخدمين الفعلية، لا مجرد اختبار اصطناعي.

لا يحاكي PSI سوى منفذ العرض الأولي عند التحميل، لذا قد لا يرصد CLS المحرَّك بالتمرير أو تفاعل المستخدم. استخدم Chrome DevTools لتلك الحالات.

The data shows the real-world user experience with CLS and the different Web Vital Metrics using CrUX live.

Chrome DevTools وإضافة Web Vitals

تعرض إضافة Web Vitals لمتصفح Chrome (يصونها Google) درجات CLS المباشرة أثناء التمرير والتفاعل مع الصفحة. إنها أسرع طريقة لاستنساخ إزاحات التخطيط يدويًا. كما تُبرز لوحة Performance في Chrome DevTools سجلات إزاحة التخطيط مع تعليقات توضيحية تُظهر أيّ العناصر تحرّكت وبأيّ مقدار.

إصلاح مشاكل CLS

إضافة width وheight إلى جميع الصور وiframes

هذا الإصلاح الأعلى تأثيرًا لمعظم المواقع. بدون أبعاد صريحة، لا يعرف المتصفح كم من المساحة يحجزها أثناء تحميل الصورة، فيُدفع المحتوى الذي يليها إلى الأسفل حين تظهر الصورة.

html
<!-- سيّئ: لا أبعاد -->
<img src="photo.jpg" alt="…">

<!-- جيد: الأبعاد الصريحة تتيح للمتصفح حجز المساحة -->
<img src="photo.jpg" alt="…" width="800" height="450">

يُحقق CSS الحديث (aspect-ratio) الأثر ذاته للصور المتجاوبة، غير أن تحديد سمتَي width وheight في HTML يظل الأسلوب الأكثر موثوقية، وتتولّاه معظم أطر العمل الحديثة وخطوط معالجة الصور في أنظمة إدارة المحتوى تلقائيًا.

حجز مساحة للإعلانات

الإعلانات هي السبب الأكثر شيوعًا لارتفاع CLS في المواقع المُدرّة للدخل. تقدّم شبكات الإعلانات أحجامًا ديناميكية، وإن لم تُحجز مساحة مسبقًا أعادت الصفحة التدفق حين يُحمَّل الإعلان.

  1. احجز حاوية ثابتة (min-height يوافق أكثر أحجام إعلاناتك شيوعًا) قبل تحميل وسم الإعلان.
  2. لا تطوِ الحاوية إن لم يُقدَّم أيّ إعلان — فالعنصر النائب الفارغ يمنع إعادة تدفق ثانية.
  3. انتبه بشكل خاص للإعلانات الموضوعة قرب أعلى منفذ العرض. الإعلانات غير الثابتة المدرجة فوق الطية تتسبّب في أسوأ درجات CLS.
  4. استخدم بيانات مرات الظهور التاريخية من شبكتك الإعلانية لتحديد أكثر أحجام الإعلانات شيوعًا لكل موضع، ثم حدّد حجم الحاوية وفق ذلك.

تجنّب إدراج محتوى فوق المحتوى القائم

لافتات الموافقة على ملفات تعريف الارتباط ونوافذ الإشعارات وأدوات الدردشة التي تُحمَّل بصورة غير متزامنة وتظهر فوق المحتوى القائم مصدرٌ متكرر لـ CLS. الخيارات:

إصلاح تحميل خطوط الويب (FOIT وFOUT)

يحدث FOIT (Flash of Invisible Text) حين يُخفي المتصفح النص حتى يكتمل تحميل خط مخصص. يحدث FOUT (Flash of Unstyled Text) حين يُعرض أولًا خط احتياطي ثم يُستبدل — يُسبّب الاختلاف في مقاييس الخطوط إزاحة في التخطيط.

الحل: font-display: swap مقترنًا بـ <link rel="preload"> للخطوط الجوهرية:

html
<link rel="preload" href="/fonts/my-font.woff2" as="font" type="font/woff2" crossorigin>
css
@font-face {
  font-family: 'MyFont';
  src: url('/fonts/my-font.woff2') format('woff2');
  font-display: swap;
}

يُسبّب font-display: swap حالة FOUT (نص مرئي لكن بلا تنسيق) بدلًا من FOIT (نص غير مرئي)، وهو أفضل لـ CLS لأن النص يظهر فورًا. لتقليل أثر الاستبدال على المقياس أكثر، استخدم خاصية CSS size-adjust لمطابقة مقاييس الخط الاحتياطي بالخط المخصص — وهذا يقلّص إعادة التدفق حين يدخل الخط المخصص حيّز التنفيذ.

جافاسكريبت من طرف ثالث

تُحمَّل سكريبتات الأطراف الثالثة (أزرار المشاركة وأدوات التعليقات والدردشة المباشرة ونوافذ التحليلات) بشكل غير متزامن وكثيرًا ما تحقن عناصر واجهة مستخدم بعد أن تكون الصفحة قد تقدّمت فعلًا. لتقليل أثرها على CLS:

التحميل المُؤجَّل والعناصر النائبة

يُؤجّل التحميل المُؤجَّل (Lazy Loading) تحميل الصور حتى تقترب من منفذ العرض، مما يوفّر استهلاك النطاق الترددي. لكن إن لم يُحدَّد عنصر نائب، تنهار حاوية الصورة إلى ارتفاع صفري ثم تقفز حين تُحمَّل الصورة.

احرص دائمًا على أن تحمل العناصر المُحمَّلة بتأخير أبعادًا صريحة أو aspect-ratio محددًا عبر CSS، كي يحجز المتصفح المساحة الصحيحة حتى قبل تحميل الصورة. ينطبق هذا على كل من الخاصية الأصلية loading="lazy" ومحمّلات التأخير المستندة إلى JavaScript.

CLS — الأسئلة الشائعة لعام 2026

هل لا يزال FID إشارة تصنيف في 2026؟

لا. أحالت Google رسميًا FID (First Input Delay) إلى التقاعد من Core Web Vitals في مارس 2024 وأحلّت محله INP (Interaction to Next Paint). الثلاثي الحالي لـ CWV هو: LCP وINP وCLS. حدّث أي توثيق داخلي أو أدوات لا تزال تشير إلى FID.

ما درجة CLS الجيدة التي يجب استهدافها؟

عتبات Google: ما دون 0.1 “جيد”، 0.1–0.25 “يحتاج إلى تحسين”، ما فوق 0.25 “ضعيف”. استهدف البقاء دون 0.1. تُقاس الدرجة عند النسيل المئيني الخامس والسبعين لتحميلات الصفحات في بيانات حقل CrUX.

هل يؤثر CLS في التصنيفات؟

نعم، لكنه إشارة من بين إشارات كثيرة. كانت Core Web Vitals عاملًا في تصنيف تجربة الصفحة منذ منتصف عام 2021. لن يُغرق CLS الضعيف صفحة قوية، لكنه قد يكون عامل الحسم عند التعادل وسيُلحق الضرر مباشرةً بمقاييس تفاعل المستخدمين (معدل الارتداد وعمق الجلسة) بحكم طبيعته.

تُظهر درجة PSI لديّ CLS جيدًا لكن Search Console تُعلّم الصفحة بأنها ضعيفة — أيّهما صحيح؟

ثق بـ Search Console (بيانات الحقل) على بيانات مختبر PSI عند التعارض. لا تحاكي اختبارات مختبر PSI سوى تحميل منفذ العرض الأولي؛ فتفوتها حالات CLS المحرَّكة بتمرير المستخدم أو استبدال الخطوط على اتصالات أبطأ أو الإعلانات المُحمَّلة بعد التفاعل. تعكس بيانات حقل CrUX في Search Console مستخدمين حقيقيين في ظروف حقيقية.

قراءة ذات صلة:


النسخة المختصرة

إن كنت تقرأ هذا لأن سير العمل الموصوف فيه يأكل أسبوعك بأكمله، فهذا بالضبط نوع الحلقة التي أبني لها عملاء AI. فتحتان للبناء في وقت واحد.

تحديث مايو 2026

قصة Google في 2026 هي AI Overviews في كل مكان: تخرّجت تجربة SGE من عام 2023 لتصبح ميزة افتراضية في مايو 2024، وتظهر الآن في ما يُقدَّر بـ ~60% من الاستعلامات المعلوماتية الأمريكية. لمشغّلي SEO والإعلانات:

إجابة سؤال “كيف تجني Google أموالها” في 2026: لا تزال إعلانات Search (مهيمنة)، لكن إعلانات YouTube وCloud والاشتراكات (YouTube Premium + Google One) باتت جميعها خطوطًا إيرادية جوهرية الآن.

تابع القراءة

احصل على دليل الذكاء الاصطناعي في صندوق بريدك

كل أربعاء. أكثر من 28,400 مشترك. بدون حشو.

↵ لعرض كل النتائج esc esc للإغلاق