موقعك يستغرق 4 ثوانٍ للتحميل. سمعت أن هذا سيئ. فتحت أداة اختبار السرعة، حصلت على نتيجة 58، ووجدت أمامك قائمة طويلة من التوصيات دون أن تعرف من أين تبدأ. هل هذا يبدو مألوفاً؟
تحسين سرعة الموقع لا يجب أن يكون أمراً مُربكاً. معظم المكاسب الحقيقية تأتي من عدد محدود من التغييرات المركّزة. هذا المقال يأخذك في جولة عبر التغييرات التي تُحدث فرقاً فعلياً — مع أرقام حقيقية تدعم كل نقطة.
لماذا يستحق تحسين سرعة الموقع وقتك؟
السرعة ليست مجرد تجربة مستخدم جيدة (رغم أن تأخيراً لمدة ثانية واحدة في تحميل الصفحة قد يُقلّل معدلات التحويل بنسبة تصل إلى 7%). فهي تؤثر أيضاً على ترتيب موقعك في نتائج محركات البحث. تستخدم Google سرعة الصفحة كمعيار للترتيب منذ عام 2010، وأصبح Core Web Vitals — مجموعة مقاييس تجربة المستخدم الحالية — عاملاً مؤكداً في الترتيب.
ثلاثة Core Web Vitals يجب أن تعرفها:
- Largest Contentful Paint (LCP): الوقت حتى يظهر المحتوى الرئيسي. استهدف أقل من 2.5 ثانية.
- Cumulative Layout Shift (CLS): مقدار تحرّك عناصر الصفحة أثناء التحميل. استهدف أقل من 0.1.
- Interaction to Next Paint (INP): مدى سرعة استجابة الصفحة لمدخلات المستخدم. استهدف أقل من 200ms.
هذه ليست أرقاماً مجردة. إنها تصف إحباطات حقيقية يشعر بها زوارك عندما يكون الموقع بطيئاً أو غير مستقر.
ابدأ بالقياس، لا بالتخمين
قبل أن تلمس سطراً واحداً من الكود، قِس أولاً. أنت بحاجة إلى نقطة انطلاق واضحة.
هذه الأدوات مجانية وموثوقة:
- PageSpeed Insights — تُجري تدقيقاً باستخدام Lighthouse وتعرض Core Web Vitals من مستخدمي Chrome الحقيقيين.
- WebPageTest — مخططات waterfall أكثر تفصيلاً، وعرض filmstrip، واختبار من مواقع متعددة.
- Chrome DevTools (Network tab) — الأفضل لتشخيص طلبات محددة وتحديد نقاط الاختناق في البيئات المحلية أو التجريبية.
اختبر من مواقع جغرافية متعددة. قد يبدو الموقع سريعاً في نيويورك لكنه بطيء في لندن إذا لم تكن تستخدم CDN. اختبر أيضاً على اتصال 4G محدود السرعة — فهذا أقرب إلى ما يختبره كثير من زوارك.
التحسينات عالية التأثير التي يجب تقديمها على غيرها
اضغط الصور وحجّمها بشكل صحيح
الصور عادةً هي الفرصة الأكبر في أي صفحة. ملف JPEG غير محسّن قد يصل وزنه إلى 2–3 ميغابايت بينما يمكن أن يكون 200 كيلوبايت دون أي فقدان مرئي في الجودة.
أمران يجب فعلهما فوراً:
- حوّل الصور إلى صيغة WebP. إنها أصغر بنسبة 25–35% من JPEG بجودة مكافئة، ومدعومة الآن من جميع المتصفحات الحديثة.
- أضف خصائص width وheight لكل وسم <img>. هذا يمنع اضطراب التخطيط (CLS) لأن المتصفح يحجز المساحة المناسبة قبل تحميل الصورة.
لمواقع WordPress، إضافات مثل ShortPixel أو Imagify تتولى هذا تلقائياً. للمشاريع المخصصة، أدوات مثل sharp (Node.js) أو Squoosh (CLI) تمنحك تحكماً دقيقاً.
فعّل التخزين المؤقت على كل مستوى
التخزين المؤقت (Caching) هو أحد أقوى تقنيات تحسين سرعة الموقع لأنه يُزيل العمل المتكرر غير الضروري. هناك عدة مستويات للتفكير فيها:
- Browser caching: أخبر المتصفحات بتخزين الأصول الثابتة (CSS, JS, الصور) محلياً. اضبط ترويسة Cache-Control مع max-age طويل للملفات ذات الإصدارات: Cache-Control: public, max-age=31536000, immutable
- تخزين الصفحات على مستوى الخادم: خزّن HTML المُصيَّر بالكامل حتى لا يضطر PHP أو Node لإعادة بناء كل صفحة عند كل طلب. هذا مهم جداً لمواقع WordPress — إضافات مثل WP Rocket أو W3 Total Cache تتولى ذلك، لكن الاستضافة المُدارة الجيدة غالباً ما تتعامل مع تخزين الصفحات الكاملة على مستوى الخادم، وهو أسرع وأكثر موثوقية من التخزين القائم على الإضافات.
- CDN caching: قدّم الأصول الثابتة من edge nodes قريبة من زوارك. يمكن للـ CDN أن يُقلّل وقت تسليم الأصول بنسبة 50–80% للمستخدمين البعيدين جغرافياً.
قلّل JavaScript وأجّل تحميله
JavaScript عادةً هو السبب الرئيسي لضعف نتائج INP. الكثير من JS يمنع المتصفح من رسم الصفحة ويجعل استجابتها للنقرات والضغطات بطيئة.
خطوات عملية:
- راجع ما يعمل فعلاً باستخدام تبويب Coverage في Chrome DevTools. قد تجد أن 60–70% من JS لا يُستخدم عند التحميل الأولي.
- أضف defer أو async للسكريبتات غير الحرجة: <script src="analytics.js" defer></script>
- حمّل سكريبتات الطرف الثالث (ودجات الدردشة، التضمينات الاجتماعية) بشكل lazy — فهي غالباً الأسوأ في وقت الحجب.
حسّن وقت استجابة خادمك (TTFB)
Time to First Byte (TTFB) يقيس الوقت الذي يستغرقه المتصفح لاستقبال أول بايت من HTML. كل شيء آخر يبدأ بعد ذلك، لذا فإن TTFB البطيء يضع سقفاً لمدى سرعة صفحتك.
معيار Google لـ TTFB الجيد هو أقل من 800ms، لكن ما يجب أن تستهدفه هو أقل من 200ms.
الأسباب الشائعة لارتفاع TTFB:
- عدم وجود تخزين مؤقت للصفحات (خادمك يولّد HTML من الصفر عند كل طلب)
- استعلامات قاعدة بيانات بطيئة
- PHP يعالج منطقاً ثقيلاً للإضافات
- خادم مشترك مثقّل بموارد غير كافية
إذا كنت على استضافة مُدارة، يجب أن يكون خادمك مُهيّأً مسبقاً لتحقيق TTFB منخفض — أشياء مثل opcode caching (OPcache لـ PHP)، وتخزين الاستعلامات مؤقتاً، وضبط PHP-FPM بشكل صحيح، كلها أمور ينبغي أن تُعالَج على مستوى البنية التحتية. إذا كان TTFB لديك يتجاوز 500ms باستمرار ورغم تفعيل تخزين الصفحات، فالمشكلة على الأرجح على مستوى الخادم أو قاعدة البيانات.
استخدم شبكة توصيل المحتوى (CDN)
يحفظ الـ CDN نسخاً من ملفاتك الثابتة — الصور، CSS، JS، الخطوط — على خوادم موزّعة حول العالم. عندما يفتح أحد الزوار موقعك، تُسلَّم هذه الملفات من أقرب edge node بدلاً من خادمك الأصلي.
النتيجة: انخفاض كبير في زمن الاستجابة للمستخدمين البعيدين عن الموقع الجغرافي لخادمك. Cloudflare وBunny.net وKeyCDN خيارات شائعة. كثير من مزودي الاستضافة المُدارة يدمجون CDN كجزء من حزمتهم، مما يعني أنك تحصل على الفائدة دون عناء الإعداد.
مكاسب سريعة يمكنك تطبيقها اليوم
- فعّل ضغط Gzip أو Brotli على خادمك. يحقق Brotli عادةً ضغطاً أفضل بنسبة 15–20% من Gzip. معظم خوادم الويب تدعمه بشكل أصلي.
- أضف preconnect للمصادر الخارجية الحرجة: <link rel="preconnect" href="https://fonts.googleapis.com">
- استضف Google Fonts على خادمك بدلاً من تحميلها من خوادم Google — تتخلص بذلك من DNS lookup وطلب يحجب الرسم.
- احذف CSS غير المستخدم. أدوات مثل PurgeCSS يمكنها تجريد الأنماط غير المستخدمة تلقائياً أثناء عملية البناء.
استمر في المراقبة بعد التحسين
تراجعات السرعة تحدث. إضافة جديدة، أو صورة غير محسّنة، أو سكريبت طرف ثالث يمكنها بهدوء أن تُلغي أشهراً من العمل. أعدّ مراقبة تلقائية باستخدام أداة مثل SpeedCurve أو استخدم PageSpeed Insights بشكل دوري عبر API الخاصة به.
الهدف ليس نتيجة مثالية — بل تجربة سريعة وثابتة للمستخدمين الحقيقيين. تابع Core Web Vitals في تقرير Experience الخاص بـ Google Search Console بمرور الوقت. تلك البيانات تعكس مستخدمي Chrome الفعليين على موقعك، وليس فقط ظروف المختبر.
تحسين سرعة الموقع عملية مستمرة، وليست إصلاحاً لمرة واحدة. قِس، وحسّن، وراقب، وكرر. ابدأ بالتغييرات ذات التأثير الأكبر مع أقل جهد — الصور، والتخزين المؤقت، وJavaScript — وستشهد نتائج ملموسة بسرعة.