يمكنك الاطّلاع على آخر الأخبار والإحصاءات من مؤتمر Google I/O لعام 2019.
تحدث إنجازات رائعة في "بحث Google"، ويسعدنا مشاركتها في مؤتمر Google I/O لعام 2019.
في هذه المشاركة، سنركّز على أفضل الممارسات لجعل تطبيقات الويب المستندة إلى JavaScript قابلة للاكتشاف في "بحث Google"، بما في ذلك:
- برنامج Googlebot الجديد والمحدَّث باستمرار
- مسار Googlebot للزحف والعرض والفهرسة
- رصد الميزات ومعالجة الأخطاء
- استراتيجيات العرض
- أدوات الاختبار لموقعك الإلكتروني في "بحث Google"
- التحديات الشائعة والحلول الممكنة
- أفضل الممارسات لتحسين محركات البحث في تطبيقات الويب المستندة إلى JavaScript
تعرَّف على برنامج Googlebot الدائم التطوّر
أعلنّا هذا العام عن الإصدار الجديد والمحدَّث باستمرار من Googlebot الذي طال انتظاره.
يستخدم Googlebot الآن محرّكًا حديثًا من Chromium لعرض المواقع الإلكترونية على "بحث Google". فضلاً عن ذلك، سنختبر الإصدارات الأحدث من Chromium للحفاظ على تحديث Googlebot، وعادةً ما يتم ذلك خلال بضعة أسابيع من كل إصدار ثابت من Chrome. هذا الإعلان مهم للمطوّرين على الويب وخبراء تحسين محرّكات البحث لأنّه يشير إلى إطلاق أكثر من 1,000 ميزة جديدة، مثل ES6 وIntersectionObserver
والإصدار الأول من مكوّنات الويب، في Googlebot.
التعرّف على آلية عمل Googlebot
Googlebot هو مسار يضم عدة مكونات. لنلقِ نظرة لفهم الطريقة التي يتّبعها Googlebot في فهرسة الصفحات لتظهر في "بحث Google".
تتم هذه العملية على النحو التالي:
- يضع برنامج Googlebot عناوين URL ضمن قائمة انتظار للزحف.
- ثم يجلب عناوين URL باستخدام طلب HTTP استنادًا إلى ميزانية الزحف.
- يفحص Googlebot ترميز HTML بحثًا عن الروابط ويضع ضمن قائمة انتظار الزحف الروابط التي تم اكتشافها.
- ثم يضع Googlebot الصفحة في قائمة انتظار لعرضها.
- في أقرب وقت ممكن، يعرض مثيل Chromium بلا واجهة مستخدم رسومية الصفحة، والتي تتضمّن تنفيذ JavaScript.
- يستخدم Googlebot محتوى HTML المعروض لفهرسة الصفحة.
يمكن أن يؤثر الإعداد الفني في عملية الزحف والعرض والفهرسة. على سبيل المثال، يمكن أن تؤثر أوقات الاستجابة البطيئة أو الأخطاء في الخادم في ميزانية الزحف. هناك مثال آخر، وهو أنّ طلب عرض الروابط باستخدام JavaScript قد يؤدي إلى تباطؤ عملية اكتشاف هذه الروابط.
استخدام ميزة "رصد الميزات" والتعامل مع الأخطاء
يحتوي الإصدار المحدَّث باستمرار من Googlebot على العديد من الميزات الجديدة، ولكن لا تزال بعض الميزات غير متاحة. قد يعني الاعتماد على الميزات غير المتوافقة أو عدم التعامل مع الأخطاء بشكل صحيح أنّه يتعذّر على Googlebot عرض المحتوى الخاص بك أو فهرسته.
لنلقِ نظرة على المثال التالي:
<body>
<script>
navigator.geolocation.getCurrentPosition(function onSuccess(position) {
loadLocalContent(position);
});
</script>
</body>
قد لا تعرض هذه الصفحة أي محتوى في بعض الحالات لأن الرمز لا يعالج عندما يرفض المستخدم الإذن أو عندما يعرض استدعاء getCurrentPosition رسالة خطأ. يرفض Googlebot طلبات الأذونات مثل هذه تلقائيًا.
هذا حل أفضل:
<body>
<script>
if (navigator.geolocation) {
// this browser supports the Geolocation API, request location!
navigator.geolocation.getCurrentPosition(
function onSuccess(position) {
// we successfully got the location, show local content
loadLocalContent(position);
}, function onError() {
// we failed to get the location, show fallback content
loadGlobalContent();
});
} else {
// this browser does not support the Geolocation API, show fallback content
loadGlobalContent();
}
</script>
</body>
إذا كنت تواجه مشاكل في فهرسة موقعك الإلكتروني الذي يستخدم JavaScript، يمكنك الاطّلاع على دليل تحديد المشاكل وحلّها للاطّلاع على الحلول.
اختيار استراتيجية العرض المناسبة لتطبيق الويب
إنّ استراتيجية العرض التلقائية لتطبيقات الصفحة الواحدة حاليًا هي العرض من جهة العميل. يحمِّل HTML ملف JavaScript، الذي ينشئ بعد ذلك المحتوى في المتصفح أثناء تنفيذه.
لنلقِ نظرة على تطبيق ويب يعرض مجموعة من صور القطط ويستخدم JavaScript لعرض المحتوى بالكامل في المتصفح.
إذا كان لك مطلق الحرية في اختيار استراتيجية العرض التي تريدها، ننصحك باستخدام العرض من جهة الخادم أو العرض المسبق. وينفذ JavaScript على الخادم لإنشاء محتوى HTML الأولي، الذي يمكن أن يحسّن الأداء لكل من المستخدمين وبرامج الزحف. تتيح هذه الاستراتيجيات للمتصفح بدء عرض HTML عند وصوله عبر الشبكة، ما يزيد من سرعة تحميل الصفحة. توضّح جلسة العرض في مؤتمر I/O أو مشاركة المدونة حول العرض على الويب كيف يمكن للعرض من جهة الخادم وتطبيق صفحات الويب التقدّمية لتحسين تجربة المستخدم وأداء تطبيقات الويب، وتوفير المزيد من الأمثلة حول الرموز لهذه الاستراتيجيات.
إذا كنت تبحث عن حل لمساعدة برامج الزحف التي لا تنفّذ JavaScript، أو إذا تعذّر عليك إجراء تغييرات على قاعدة رموز الواجهة الأمامية، يمكنك استخدام العرض الديناميكي، الذي يمكنك تجربته في هذا الدرس التطبيقي حول الترميز. ومع ذلك، يُرجى العلم أنّك لن تحصل على مزايا تجربة المستخدم أو الأداء التي ستحصل عليها عند العرض من جهة الخادم أو العرض المُسبَق، وذلك لأنّ العرض الديناميكي لا يوفّر سوى محتوى HTML ثابت لبرامج الزحف. فهذا يجعلها نقطة توقّف بدلاً من استراتيجية طويلة المدى.
اختبار صفحاتك
على الرغم من أنّ معظم الصفحات تعمل بشكل جيد مع برنامج Googlebot بشكل عام، إلا أنّنا ننصح باختبار صفحاتك بشكل منتظم للتأكد من إتاحة المحتوى الخاص بك لبرنامج Googlebot ومن عدم حدوث أي مشاكل. تتوفّر عدة أدوات رائعة لمساعدتك في ذلك.
الطريقة الأسهل للتحقق السريع من صفحتك هي فحص التوافق مع الأجهزة الجوّالة. بالإضافة إلى عرض مشاكل التوافق مع الأجهزة الجوّالة، يمكنك أيضًا توفير لقطة شاشة لمحتوى الجزء المرئي من الصفحة وملف HTML المعروض كما يراه Googlebot.
يمكنك أيضًا معرفة ما إذا كانت هناك مشاكل في تحميل الموارد أو أخطاء في JavaScript.
ننصحك بإثبات ملكية نطاقك في Google Search Console لتتمكّن من استخدام "أداة فحص عنوان URL" للاطّلاع على مزيد من المعلومات حول حالة الزحف إلى عنوان URL وفهرسته، وتلقّي الرسائل عندما ترصد خدمة Search Console مشاكل، والتعرّف على مزيد من التفاصيل حول مستوى أداء موقعك الإلكتروني في "بحث Google".
للحصول على نصائح وإرشادات عامة حول تحسين محرّكات البحث، يمكنك الاستعانة بميزة "التدقيق في تحسين محركات البحث" من خلال أداة Lighthouse. لدمج عمليات "التدقيق في تحسين محركات البحث" في حزمة الاختبار، استخدِم واجهة سطر الأوامر في Lighthouse أو برنامج تتبُّع Lighthouse CI.
تساعدك هذه الأدوات في تحديد وتصحيح الأخطاء وإصلاحها في الصفحات في "بحث Google"، ويجب أن تكون هذه المشاكل جزءًا من برنامج التطوير الخاص بك.
البقاء على اطّلاع على آخر الأخبار والتواصل
لمواكبة الإشعارات والتغييرات التي تطرأ على "بحث Google"، يُرجى متابعة مدوّنة مشرفي المواقع وقناة مشرفي المواقع من Google على YouTube وحسابنا على Twitter. يمكنك أيضًا الاطّلاع على دليل المطوّر حول "بحث Google" وسلسلة فيديوهات تحسين محركات البحث المستندة إلى JavaScript لمعرفة المزيد من المعلومات عن تحسين محرّكات البحث وJavaScript.