نشرت جوجل توضيحًا مهمًا ضمن مستندات JavaScript SEO يشرح الطريقة الصحيحة لاستخدام وسم canonical في المواقع التي تعتمد على JavaScript، وذلك لتجنب مشاكل الفهرسة وتعارض الإشارات لمحرك البحث.

ما المشكلة؟

بعض المواقع تقوم بتعيين أو تغيير وسم rel="canonical" باستخدام JavaScript بعد تحميل الصفحة، وهو ما قد يؤدي إلى:

  • إرسال إشارات متضاربة لجوجل

  • تجاهل وسم canonical

  • اختيار نسخة غير مرغوبة من الصفحة كنسخة أساسية

توجيه جوجل الرسمي

جوجل أوضحت بوضوح أن:

  • الأفضل دائمًا وضع وسم canonical في HTML الأصلي للصفحة

  • ⚠️ لا يُنصح بتغيير canonical عبر JavaScript إلى قيمة مختلفة

  • إذا تم استخدام JavaScript، يجب أن:

    • يكون canonical في JavaScript مطابقًا تمامًا لما هو موجود في HTML

    • أو ألا يكون هناك canonical في HTML من الأساس، ويتم إضافته مرة واحدة عبر JavaScript

لماذا هذا مهم؟

جوجل تعالج الصفحات المعتمدة على JavaScript على مرحلتين:

  1. قراءة HTML الأولي

  2. قراءة الصفحة بعد تنفيذ JavaScript (Rendering)

إذا ظهر canonical مختلف في كل مرحلة، قد تتجاهل جوجل الإشارة بالكامل أو تختار canonical آخر من تلقاء نفسها.

أفضل ممارسة موصى بها

  • ضع canonical ثابتًا وواضحًا داخل <head> في HTML

  • تجنب الاعتماد على JavaScript لتعديله

  • اختبر الصفحة باستخدام URL Inspection Tool في Google Search Console للتأكد مما تراه جوجل بعد المعالجة

الخلاصة

جوجل تؤكد أن الاتساق هو الأساس عند التعامل مع canonical في مواقع JavaScript:

  • HTML أولًا

  • لا تغييرات متضاربة

  • JavaScript فقط عند الضرورة القصوى وبنفس القيمة

أي تعارض قد يؤدي إلى مشاكل فهرسة يصعب تتبعها لاحقًا.

المصادر: