seo · 6 دقائق قراءة

خرائط الموقع لموقع بلغتين

الخريطة العادية قائمة عناوين وتأخذ عشر دقائق. الجزء الذي يهمّ في موقع بلغتين هو الجزء الذي تغفله أكثر المولّدات إغفالًا تامًّا.

ما هي خريطة الموقع وما ليست

هي قائمة بالروابط التي تريد زحفها، في مخطّط تقرؤه جوجل وبينغ كلتاهما. هي لا ترفع ترتيب شيء. بل تجعل الصفحات قابلة للعثور عليها — وذلك يهمّ أكثر ما يهمّ حيث يظهر أقلّ ما يظهر: الصفحات العميقة، والجديدة، والتي لا يربطها شيء.

بلا بدائل تتنافس لغتاك

انشر الصفحة نفسها بالإنجليزية والعربية بلا إشارة تربطهما فترى جوجل مستندين يغطّيان الموضوع نفسه على نطاق واحد. فتختار واحدًا. أيّهما ليس بيدك، والآخر يختفي في معظمه.

الإصلاح xhtml:link لكل لغة يوجد بها الرابط — بما فيها نفسه:

<url>
  <loc>https://example.com/page/</loc>
  <xhtml:link rel="alternate" hreflang="en"
              href="https://example.com/page/"/>
  <xhtml:link rel="alternate" hreflang="ar"
              href="https://example.com/ar/page/"/>
  <xhtml:link rel="alternate" hreflang="x-default"
              href="https://example.com/page/"/>
</url>

تظهر الأسطر الثلاثة نفسها مرّةً أخرى تحت <loc> العربي، بلا تغيير. ذلك التكرار ليس هدرًا — بل هو التبادليّة التي تقوم عليها الآليّة كلّها، والعنقود الذي تنقصه يُسقَط كاملًا.

مطلقة، دائمًا

href="/ar/page/" يُحلَّل. يجتاز التحقّق. ويُرمى.

نشر هذا الموقع 936 منها — 312 صفحة بثلاثة بدائل لكلٍّ منها — وأبلغ Search Console عن رقم بلا إشارة إلى أي جزء كان الخطأ. وهبط الرقم إلى صفر يوم جُعلت مطلقة. ذلك كل أثر التشخيص المتاح، ولهذا كانت معرفة القاعدة أجدى من اكتشافها.

يحتاج عنصر <urlset> كذلك إعلان مساحة الأسماء، وإلّا تُجوهلت البدائل عناصرَ مجهولة:

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:xhtml="http://www.w3.org/1999/xhtml">

الحقول التي لا تفعل شيئًا

changefreq وpriority تتجاهلهما جوجل منذ سنين. أخرِجهما إن شئت؛ فلا شيء يقرؤهما، والملفّ المليء بحقول لا يقرؤها شيء ملفّ لا يصونه أحد.

وlastmod مختلف — تستعمله جوجل فعلًا، لكن من المواقع التي يكون فيها صادقًا وحدها. اختم كل رابط بتاريخ اليوم في كل بناء يُهمَل تمامًا، بما في ذلك للصفحات التي تغيّرت حقًّا.

ما لا تُدرجه

الصفحات الحاملة noindex، والصفحات الممنوعة في robots.txt. فكلتاهما ترسل تعليمتين متعاكستين معًا، ويُدرج Search Console النتيجة خطأ تغطية بدل أن يخمّن أيّهما قصدت.

الرابط يجب أن يطابق حرفًا بحرف

مدخل الخريطة يُقارن بالرابط الذي تعرفه جوجل سلفًا، حرفًا بحرف. أربعة اختلافات تفسّر أكثر الأخطاء التي يراها الناس في تقرير الخريطة، وأربعتها تبدو متطابقة للعين:

  • http:// في الخريطة والموقع يحوّل إلى https://
  • www. في أحدهما دون الآخر
  • شرطة مائلة في آخر أحدهما دون الآخر
  • رابط على مضيف مختلف تمامًا، وهو يُتجاهل ببساطة

كلٌّ من هذه يحوّل المدخل تحويلةً بدل أن يكون صفحة، ويبلّغ Search Console عنه كذلك. الإصلاح واحد دائمًا: اسرد الرابط كما ينصّ عليه وسم canonical في الصفحة بالضبط. فإن اختلفا، فـcanonical هو الصواب والخريطة هي الخطأ.

بعد الخمسين ألفًا: ملفّ الفهرس

الخريطة الواحدة تحمل خمسين ألف رابط أو 50 ميغابايت غير مضغوطة. بعدها تقسمها وتسرد الأجزاء في فهرس خرائط — ملفّ مختلف بعنصر جذر مختلف، <sitemapindex> بدل <urlset>، ومدخلات تشير إلى خرائط لا إلى صفحات.

التقسيم يستحقّ أن يجري قبل أن تضطرّ إليه. فالخرائط المقسومة بالأقسام — واحدة للمنتجات وأخرى للمقالات — تحوّل تقرير التغطية في Search Console من رقم واحد إلى تشخيص، لأنك ترى أي جزء من الموقع لا يُفهرس بدل أن ترى أن بعضه لا يُفهرس فحسب.

ما تفحصه بعد إرسالها

تقرير الخرائط في Search Console يعطي عدد ما قُرئ وتاريخ الاكتشاف. العدد الأقلّ بكثير ممّا أرسلته يعني أن روابط رُفضت — وسببها عادةً أحد الاختلافات الأربعة أعلاه.

الأمر الآخر الذي تراقبه «مُكتشَفة — غير مفهرسة حاليًّا». هذه جوجل تقول إنها وجدت الرابط في خريطتك واختارت ألّا تجلبه، وهو قول عن الصفحة لا عن الملفّ. فخريطة الموقع تجعل الصفحة يُنظر إليها؛ ولا تستطيع أن تجعلها تستحقّ البقاء.

بعد كتابتها

أشِر إليها من robots.txt وأرسلها في Search Console — كليهما لا أحدهما. فسطر robots.txt هو ما تقرؤه كل الزواحف الأخرى.

مولّد خريطة الموقع يأخذ قائمة عناوين، ويقرن كلًّا منها بترجمته من بادئة المسار، ويكتب العنقود كاملًا بالإشارة إلى الذات. يرفض الروابط النسبية بدل أن يُخرجها.

أسئلة

هل تحسّن خريطة الموقع الترتيب؟

لا. إنها تؤثّر في الاكتشاف لا في الموضع. قيمتها أعلى ما تكون في موقع كبير، أو موقع جديد، أو صفحات لا يربطها إلا القليل — فالصفحة التي لا يربطها شيء صفحة يبلغها الزاحف بالصدفة.

لماذا أضع hreflang في الخريطة بدل الصفحات؟

لأن ملفًّا واحدًا يتغيّر بدل كل صفحة. كلاهما صحيح، لا كلاهما معًا: فإعلان العنقود نفسه في موضعين يخلق فرصتين للتناقض، والتناقض يُبطلهما معًا.

ماذا يحدث إن كانت روابط البدائل نسبيّة؟

تُطرح بلا كلمة. الملفّ ما زال يُحلَّل وما زال يجتاز التحقّق من المخطّط. نشر هذا الموقع 936 مرجعًا نسبيًّا قبل أن يلحظ، والعَرَض الوحيد رقمٌ في Search Console.

هل أُدرج صفحات عليها وسم noindex؟

لا. فخريطة الموقع قائمة بالصفحات التي تريد فهرستها، وإدراج صفحة طلبت استبعادها إرسال تعليمتين متعاكستين. وتُدرج جوجل التعارض خطأ تغطية.

كم رابطًا تحمل خريطة واحدة؟

خمسين ألفًا، أو 50 ميغابايت غير مضغوطة، أيّهما جاء أوّلًا. بعدها تحتاج خرائط عدّة وفهرس خرائط يسردها، وهو ملفّ مختلف بعنصر جذر مختلف.

أدوات من هذا الدليل

المزيد من أدوات SEO — كلّها تعمل في متصفّحك، ولا واحدة منها ترفع ملفًّا.