عندما يفهرس محرك بحث Google ومحركات البحث الأخرى مواقع الويب ، فإنها لا تنفذ جافا سكريبت. يبدو أن هذا يضع مواقع صفحة واحدة - يعتمد الكثير منها على جافا سكريبت - في وضع غير مواتٍ مقارنةً بالمواقع التقليدية.

قد لا يعني ذلك عدم وفاء Google ، فقد يؤدي ذلك إلى وفاة شركة ما ، وقد يؤدي هذا الخطأ المقلق إلى إغراء الأشخاص غير الواعين بالتخلي عن مواقع الصفحات الواحدة تمامًا.

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

في هذه المقالة سنركز على Google ، ولكن محركات بحث كبيرة أخرى مثل Yahoo! و Bing دعم نفس الآلية.

كيف يقوم Google بالزحف إلى موقع صفحة واحدة

عندما يقوم Google بفهرسة موقع ويب تقليدي ، يقوم زاحف الويب الخاص به (المسمى Googlebot) أولاً بمسح وفهرسة محتوى عنوان URI ذي المستوى الأعلى (على سبيل المثال ، www.myhome.com). بمجرد اكتمال ذلك ، فإنه يتبع جميع الارتباطات الموجودة في تلك الصفحة ويفهرس هذه الصفحات أيضًا. ثم يتبع الارتباطات على الصفحات التالية وهكذا. وفي النهاية ، يتم فهرسة جميع المحتوى على الموقع والنطاقات المرتبطة به.

عندما يحاول Googlebot فهرسة موقع صفحة واحدة ، فإن كل ما يراه في HTML هو حاوية فارغة واحدة (عادةً علامة فارغة أو علامة نصية) ، لذلك لا يوجد شيء لفهرسته ولا توجد روابط للزحف ، ويفهرس الموقع وفقًا لذلك ( في "مجلد" دائري مستدير على الأرض بجوار مكتبه).

إذا كانت هذه نهاية القصة ، فستكون نهاية مواقع الصفحات الواحدة للعديد من تطبيقات الويب والمواقع. لحسن الحظ ، أدركت Google ومحركات البحث الأخرى أهمية مواقع الصفحات الواحدة والأدوات المقدمة للسماح للمطورين بتوفير معلومات البحث للزاحف التي يمكن أن تكون أفضل من مواقع الويب التقليدية.

كيفية جعل موقع صفحة واحدة قابلاً للزحف

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

بالنسبة إلى الصفحة الرئيسية لموقعنا ، كيف تبدو الصفحة المحسنة للزاحف؟ من المحتمل أن يكون شعارنا أو صورة أساسية أخرى نرغب في الظهور في نتائج البحث ، وبعض نصوص تحسين SEO تشرح ما يفعله الموقع ، وقائمة بروابط HTML إلى تلك الصفحات فقط التي نريد أن يقوم Google بفهرستها. ما لا تحتوي عليه الصفحة هو أي تصميم CSS أو بنية HTML معقدة مطبقة عليه. كما لا تحتوي على أي جافا سكريبت ، أو روابط إلى مناطق من الموقع لا نريد أن يقوم Google بفهرستها (مثل صفحات إخلاء المسؤولية القانونية أو الصفحات الأخرى التي لا نريد أن يدخلها الناس من خلال بحث Google). توضح الصورة أدناه كيف يمكن تقديم صفحة إلى متصفح (على اليسار) وإلى الزاحف (على اليمين).

optimize_001

تخصيص محتوى برامج الزحف

عادةً ما ترتبط مواقع الصفحات الواحدة بمحتوى مختلف باستخدام علامة تجزئة (#!). لا يتم اتباع هذه الروابط بنفس الطريقة التي يستخدمها الأشخاص وبرامج الزحف.

على سبيل المثال ، إذا كان رابط صفحة المستخدم في موقع الصفحة الواحدة يبدو مثل /index.htm#!page=user:id،123 ، فسيقوم الزاحف برؤية #! ومعرفة البحث عن صفحة ويب باستخدام URI /index.htm؟_escaped_fragment_=page=user:id،123 . مع العلم أن الزاحف سيتبع النموذج والبحث عن معرّف الموارد المنتظم هذا ، يمكننا برمجة الخادم للاستجابة لهذا الطلب مع لقطة HTML للصفحة التي يتم عرضها عادةً بواسطة جافا سكريبت في المتصفح.

سيتم فهرسة هذه اللقطة بواسطة Google ، ولكن سيتم نقل أي شخص ينقر على بطاقة البيانات في نتائج بحث Google إلى /index.htm#!page=user:id،123 . سيحل موقع جافا سكريبت المفرد للصفحة من هناك ويعرض الصفحة كما هو متوقع.

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

اكتشاف زاحف الويب من Google

في وقت كتابة هذه السطور ، أعلن Googlebot نفسه على أنه زاحف إلى الخادم من خلال تقديم طلبات باستخدام سلسلة وكيل المستخدم من Googlebot / 2.1 (+ http://www.googlebot.com / bot.html) . يمكن لتطبيق Node.js التحقق من سلسلة وكيل المستخدم هذه في البرامج الوسيطة وإعادة إرسال الصفحة الرئيسية المحسنة للزاحف في حالة مطابقة سلسلة وكيل المستخدم. خلاف ذلك ، يمكننا التعامل مع الطلب بشكل طبيعي.

يبدو هذا الترتيب وكأنه أمرًا معقدًا لاختباره ، نظرًا لأننا لا نملك Googlebot. ومع ذلك ، تقدم Google خدمة للقيام بذلك لمواقع إنتاج الويب المتاحة للجمهور كجزء من أدوات مشرفي المواقع ، ولكن أسهل طريقة للاختبار هي محاكاة سلسلة عامل المستخدم لدينا. يستخدم هذا الأمر في طلب بعض أدوات تعريف الأوامر من سطر الأوامر ، ولكن أدوات مطوّري البرامج في Chrome تجعل هذا الأمر سهلاً مثل النقر على زر وتحديد مربع:

  1. افتح أدوات مطوري برامج Chrome من خلال النقر على الزر مع ثلاثة خطوط أفقية على يسار شريط أدوات Google ، ثم تحديد أدوات من القائمة والنقر على أدوات مطوري البرامج.

  2. في الركن الأيمن السفلي من الشاشة يوجد رمز تروس: انقر فوق ذلك ورؤية بعض خيارات المطور المتقدمة مثل تعطيل التخزين المؤقت وتشغيل تسجيل الدخول لـ XmlHttpRequests.

  3. في علامة التبويب الثانية ، التي تحمل علامة " تجاوز" ، انقر على مربع الاختيار بجوار تصنيف وكيل المستخدم وحدد أي عدد من وكلاء المستخدمين من القائمة المنسدلة من Chrome ، إلى Firefox ، إلى IE ، و iPad ، والمزيد. وكيل Googlebot ليس خيارًا افتراضيًا. لاستخدامه ، حدد غير ذلك وانسخ جملة وكيل المستخدم ولصقها في الإدخال المقدم.

  4. الآن أصبحت علامة التبويب هذه تنتحل نفسها على أنها Googlebot ، وعندما نفتح أي عنوان URI على موقعنا ، يجب أن نرى صفحة الزاحف.

فى الختام

من الواضح أن التطبيقات المختلفة ستلبي احتياجات مختلفة فيما يتعلق بما يجب فعله مع برامج زحف الويب ، ولكن دائمًا ما يكون إرجاع صفحة واحدة إلى Googlebot غير كافٍ. وسنحتاج أيضًا إلى تحديد الصفحات التي نريد كشفها وتوفير طرق لتطبيقنا لتعيين _escaped_fragment_ = key = value URI للمحتوى الذي نريد عرضه.

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

هناك أيضًا زواحف مشروعة أكثر بكثير ، لذا بعد تعديل الخادم الخاص بنا لزاحف Google ، يمكننا التوسع لتضمينهم أيضًا.

هل تقوم ببناء مواقع صفحة واحدة؟ كيف تعمل مواقع الصفحات الواحدة على محركات البحث؟ دعنا نعرف أفكارك في التعليقات.

صورة مميزة / صورة مصغرة ، البحث عن صورة عبر Shutterstock.