سئو

جاوا اسکریپت در سئو چه نقشی دارد؟ شیطان یا فرشته؟

راهنمای مطالعه

ماجرای تقابل گوگل و جاوا اسکریپت در حوزه سئو به قدری دردسر ساز شده که باورهای اشتباه در مورد آن سر به فلک می کشد. حتی تقابل این دو با یکدیگر هم باور اشتباهی است که گوگل همیشه برای از بین بردن آن تلاش کرده. بخاطر اهمیت زیاد این مسئله، در چهارمین قسمت از مجموعه سریالی باورهای غلط سئو، به ماجرای استفاده از جاوا اسکریپت و تاثیر آن در سئو پرداخته شد.

در این ویدیو در مورد مباحث زیادی صحبت شد؛ از تکنیک Lazy loading تا Pre-rendering و Ajax تا ابزارهای تست صفحات دارای جاوا اسکریپت مورد بحث قرار گرفتند تا چیزی از قلم نیفتد.

مهمان این قسمت، جیمی آلبریکو (Jamie Alberico) سئو مستر و متخصص سئو تکنیکال مجموعه Arrow electronics بود. مارتین اسپلیت (Martin Splitt) هم در نقش میزبان، مثل همیشه و با همان روحیه طنز پردازانه خود به سوالات و ابهامات آلبریکو پاسخ داد تا باورهای اشتباه در سئو و جاوا اسکریپت را برای همیشه ریشه کن کند.

در مقدمه ویدیو اولین سوال را خود مارتین اسپلیت مطرح کرد تا نظر آلبریکو را در این مورد بداند:

باورهای اشتباه در مورد سئو و جاوا اسکریپت از کجا شروع شد؟

آلبریکو در پاسخ به این مسئله اشاره کرد که بخش زیادی از باورهای اشتباه در این مورد، از طریق اطلاعاتی که درباره این مسئله منتشر شده به وجود آمده است. او توضیح داد که افراد مختلف، اطلاعات متفاوتی در این زمینه دارند و با نیتی مثبت قصد دارند که این اطلاعات را در اختیار متخصصین و علاقه مندان سئو قرار دهند، دریغ از اینکه ممکن است اشتباهاتی در این اطلاعات وجود داشته باشد.

مشکل بعدی که آلبریکو به آن اشاره کرد تفاوتی است که در نگرش برنامه نویس ها و متخصصین سئو وجود دارد:

“من فکر می کنم متخصصین سئو و برنامه نویسان طرز تفکر متفاوتی دارند”

بعد از پایان مقدمه مصاحبه، جیمی آلبریکو در مورد تجربیات خود در زمینه سئو تکنیکال گفت. آلبریکو در این بخش توضیح داد که به دلیل تخصص خود در زمینه سئو تکنیکال ارتباط نزدیکی با تیم برنامه نویسی دارد و در تمام پروژه ها با آن ها همکاری می کند تا بتوانند ویژگی ها و امکانات جدید را بدون هرگونه تاثیر منفی بر سئو، به سایت اضافه کنند. او اینطور ادامه داد که برای استفاده بهینه از جاوا اسکریپت با همکاران برنامه نویس خود صحبت های فراوانی داشته است.

بعد از آن سوال جنجال برانگیز آلبریکو که پاسخ به آن ابهامات زیادی را درباره تقابل جاوا اسکریپت و سئو برطرف می کند مطرح شد:

باور اشتباه سئو درباره ناسازگاری جاوا اسکریپت و سئو

مهمترین چالشی که در مورد رابطه سئو و جاوا اسکریپت وجود دارد این است که آیا این دو با هم در تقابل هستند؟ سوال آلبریکو دقیقا این بود:

“جاوا اسکریپت شیطان داستان ماست؟”

اسپلیت که از این سوال به وجد آمد در توضیح این باور اشتباه گفت کسانی که فکر می کنند این دو با یکدیگر سازگاری ندارند فقط متخصصین سئو نیستند، بلکه بسیاری از برنامه نویسان هم چنین باوری دارند.

او در پاسخ به این مسئله همیشگی گفت که جاوا اسکریپت مزیت های مخصوص به خود را دارد و در تقابل با سئو قرار نمی گیرد. اسپلیت توضیح داد که جاوا اسکریپت محیط وب را به محیطی جذاب، کاربردی و کاربرپسند تبدیل کرده و آن را در جهت تبدیل به محیطی پویا تغییر داده است؛

بنابراین نمی توان آن را یک عامل منفی در سئو به حساب آورد، چرا که کاربران از تاثیرات آن رضایت داشته اند.

اسپلیت اینطور ادامه داد که گوگل در حال حاضر تلاش می کند این باور اشتباه که «جاوا اسکریپت دشمن سئو است و توسط گوگل ایندکس نمی شود» را از بین ببرد.

راهنمایی برای استفاده بهینه از جاوا اسکریپت

تحلیلگر مشهور گوگل وبسمتر و سلبریتی ویدیوهای گوگل بلافاصله بعد از اینکه دشمنی گوگل و جاوا اسکریپت را تکذیب کرد، در مورد دستورالعمل هایی توضیح داد که برای استفاده بهینه از جاوا اسکریپت در دسترس متخصصین سئو و برنامه نویسان است.

این دستورالعمل ها که در Google Webmaster Guidelines هم قرار دارند کمک می کنند مشکلاتی که در زمینه استفاده از جاوا اسکریپت وجود دارد را برطرف کنید؛ مشکلاتی که باعث می شوند تمام یا بخشی از محتوای صفحات وبسایت شما برای کراولرهای گوگل غیر قابل مشاهده باشند و یا بررسی آن ها توسط ربات های گوگل دشوار و زمانبر باشد.

استفاده از تکنولوژی Web Rendering Service

اسپلیت به این مسئله اشاره کرد که بسیاری از برنامه نویسان و متخصصین سئو در مورد استفاده از جاوا اسکریپت در وبسایت و وب اپلیکیشن ها نگران هستند، اما جای نگرانی نیست؛

گوگل برای کراول کردن وبسایت ها و وب اپلیکیشن هایی که بر اساس جاوا اسکریپت ایجاد شده اند از کراولرهایی با نام WRS) Web Rendering Service) استفاده می کند. این کراولرها نوعی از ربات های خزنده گوگل به شمار می روند. با استفاده از توانایی رندر کردن کدهای جاوا اسکریپت، این مرورگرها توانایی خواندن این کدها را دارند.

فرآیند ایندکس این صفحات به شکل زیر است:

  1. کدهای جاوا اسکریپت توسط ربات های گوگل خوانده و اجرا می شوند.
  2. سپس کدهای جاوا اسکریپت به کدهای html تبدیل می شود.
  3. کدهایی که به Html تبدیل شده اند توسط گوگل ایندکس می شوند.

Lazy Loading در بهبود سرعت سایت

Lazy Loading یکی از روش هایی است که در بهبود وضعیت سرعت سایت تاثیر زیادی دارد و باعث بهبود تجربه کاربری می شود، اما اگر به درستی اجرا نشود ممکن است باعث مخفی شدن محتوای صفحات از دید ربات های گوگل شود.

در بخش دیگری از وبمستر گایدلاین گوگل به نحوه استفاده صحیح از این تکنیک اشاره شده و توضیحات مفصلی در این مورد ارائه شده است.

فرض کنید صفحه ای وجود دارد که بیش از 100 تصویر در آن وجود دارد و بیشتر کاربران با دیدن چند مورد از این تصاویر به محتوای مورد نیاز خود دست پیدا می کنند. در این شرایط اگر قرار باشد تمام این 100 تصویر برای کاربری که وارد آن صفحه شده بارگذاری شود تجربه بسیاری بدی برای کاربر به وجود می آید، اما با استفاده از تکنیک Lazy Loading، تصاویر زمانی بارگذاری می شوند که کاربر به آن ها برسد.

یکی از موضوعاتی که در دوره آموزش سئو تکنیکال مطرح میشود، همین تکنیک Lazy Loading و تاثیر آن در بهبود تجربه کاربری و سئو سایت است.

ارتباط بین Ajax، سئو و میزان خزش ربات های گوگل

درست بعد از اینکه اسپلیت توضیحات خود را درباره استفاده از تکنیک Lazy Loading تکمیل کرد، آلبریکو نظر او را در مورد Ajax پرسید. اینکه آلبریکو از اسپلیت در مورد Ajax پرسید برای او تعجب برانگیز بود. علت تعجب او این بود که در این مورد معمولا صحبت های زیادی انجام نمی شود.

بعد از این، پای صحبت به تاثیر Ajax بر نرخ خزش ربات های گوگل کشیده شد. آلبریکو از اسپلیت درخواست کرد بیشتر در این مورد صحبت کنند.

آلبریکو به این مسئله اشاره کرد که در برخی موارد از Ajax برای اضافه کردن مقدار زیادی محتوا به یک محصول استفاده می شود، در این شرایط ربات گوگل یک URL درخواست می کند، اما 9 URL دریافت می کند، چراکه هر کدام از کدهای Ajax سرنخ (String) مختص به خود را دارد.

گوگل علاوه بر این، به موضوع بودجه کراول هر سایت هم تاکید زیادی دارد. اگر اولین بار است که این اصطلاح به گوشتان میخورد، به شما توصیه میکنیم حتماً مقاله بودجه خزش در سئو را مطالعه کنید.

اما چطور می توانیم چنین وضعیتی را مدیریت کنیم؟ آیا این مسئله بر نرخ خزش ربات های گوگل تاثیر منفی می گذارد؟

پاسخ اسپلیت به این مسئله کاملا واضح و روشن بود:

“نمیشود گفت که این مسئله بر نرخ خزش ربات های گوگل تاثیر منفی می گذارد؛ به خاطر اینکه فرآیند خزش ربات های گوگل کمی پیچیده تر از چیزی است که فکر می کنیم. فرآیند کار ربات های گوگل معمولا دست کم گرفته می شود، اما پیچیده تر از چیزی است که به نظر می رسد.”

اسپلیت در ادامه برای حل این مسئله به قابلیت کش اشاره کرد:

“ما از قابلیت کش استفاده می کنیم، چون لزوما همه محتواها در حال تغییر و به روزرسانی نیستند؛ حالا فرض کنید برای بررسی صفحه یک محصول، ربات گوگل یک درخواست ارسال می کند و 9 پاسخ دریافت می کند، در این شرایط با توجه به قابلیت کش احتمالا ربات های گوگل بسیاری از این درخواست ها و اطلاعات را قبلا کش کرده اند، بنابراین اگر قبلا این اطلاعات به صورت کش دریافت شده باشد، میزان خزش ربات های گوگل هدر نرفته و بهینگی میزان استفاده از خزش ربات های گوگل در وبسایت شما از بین نمی رود.”

نحوه برخورد ربات های گوگل با جاوا اسکریپت

این موضوع هم با صحبت جالب آلبریکو مطرح شد. آلبریکو به این موضوع اشاره کرد که ما اطلاعات زیادی درباره ربات های گوگل داریم اما ریزه کاری هایی وجود دارد که شاید بد نباشد اگر در مورد آن ها بیشتر بدانیم تا بتوانیم نحوه رفتار ربات های گوگل با جاوا اسکریپت را بفهمیم.

اسپلیت در پاسخ به صحبت های آلبریکو این قضیه را پذیرفت که در آن سوی پرده اتفاقات زیادی در حال رخ دادن است تا ربات های گوگل بتوانند به خوبی تمام محتوای موجود در صفحات بی پایان وب را بررسی کنند و آن ها را در اختیار کاربران قرار دهند. در ادامه صحبت های جذاب اسپلیت در مورد ربات های گوگل را برایتان آورده ایم:

“زمانی که محتوا منتشر می شود ما کدهای html خام را دریافت می کنیم، این کدها اطلاعات زیادی درباره فایل های CSS، JavaScript، تصاویر و لینک هایی که در محتوای یک صفحه وجود دارد به ما می دهد.

ما حجم زیادی از این اطلاعات را در اختیار داریم و بر اساس آن تصمیم می گیریم که کدام فایل های جاوا اسکریپت یا اطلاعات دیگر را در چه زمانی بررسی و ایندکس کنیم. ممکن است چندین لینک را در یک محتوای متنی ببینیم و به طور همزمان همه آن ها را بررسی کنیم.

همه این کارها به طور همزمان انجام می شوند و ترتیب و صفی برای انجام آن وجود ندارد.

اما فایل های جاوا اسکریپت پیش از اینکه توسط ربات های گوگل ایندکس شوند باید وارد فرآیند تبدیل به فرمتی با قابلیت خوانایی برای ربات های گوگل شوند. برای تبدیل به چنین فرمتی فایل های جاوا اسکریپت باید در صف تبدیل قرار بگیرد. اما برای اینکه سرعت دریافت و ایندکس محتوایی که در این فایل ها ارائه شده توسط ربات های گوگل افزایش پیدا کند، می توان از تکنیک Pre-rendering استفاده کرد.

آیا استفاده از تکنیک Pre-rendering همیشه بهترین راه حل است؟

این سوال را جیمی آلبریکو مطرح کرد و اسپلیت در پاسخ گفت که این راه حل در بیشتر شرایط بهترین راه حل است، چرا که استفاده از این تکنیک نه تنها برای ربات ها، بلکه برای کاربران هم گزینه ای جذاب و کاربردی محسوب می شود.

اسپلیت در ادامه این توضیحات مهم را ارائه داد:

“اینکه شما محتوای بیشتری را بدون زحمت در اختیار گوگل قرار دهید همیشه عالی بوده و هست، اما این نکته را در نظر بگیرید که رضایت کاربر بسیار اهمیت دارد. اگر صفحه ای با صدها تصویر در آن داشته باشید احتمالا استفاده از این تکنیک به تنهایی برای کاربر مناسب نخواهد بود.

فرض کنید شما یک گوشی هوشمند قدیمی دارید که سرعت اینترنت آن هم چندان زیاد نیست، در این شرایط باز کردن صفحه ای با صدها تصویر برای گوشی هوشمند شما مثل شکنجه است. در این شرایط می توانید استفاده ترکیبی از تکنیک های Pre-rendering و Lazy Loading را در دستور کار قرار دهید. استفاده ترکیبی از تکنیک هایی که محتوای صفحات وبسایت شما را برای کاربر و ربات های گوگل به بهترین و سریع ترین شکل در دسترس قرار می دهد همیشه بهترین راه حل است.”

هدف نهایی ما رضایت کاربر است؛ دیگر چه کار می توانیم انجام دهیم؟

اسپلیت در پاسخ به این سوال هم دوباره به اهمیت رضایت کاربر اشاره کرد. آنطور که اسپلیت توضیح داد گوگل حاضر است همه چیز را فدای خوشحالی کاربران کند:

“هدف نهایی، رساندن محتوای مورد نیاز کاربر به او در سریع ترین و راحت ترین حالت ممکن است، تفاوتی ندارد که از تکنیک Hybrid rendering یا Server-side rendering برای این هدف استفاده کنید.

اگر این تکنیک ها به درستی اجرا شوند و به کاربر دقیقا همان محتوایی که لازم دارد را ارائه دهید بهترین حالت ممکن رخ داده است، ممکن است این محتوا یک پست وبلاگ باشد یا یک صفحه محصول که کاربر بتواند به راحتی سفارش خود را انجام دهد، اگر کاربر دقیقا به همان بخشی که می خواهد فرستاده شود همه چیز رو به راه است.”

اما مهمترین و جذاب ترین سوال آلبریکو در تمام این مصاحبه در این بخش مطرح شد:

“در بسیاری از موارد می توانیم تجربه بهتری برای کاربران ایجاد کنیم؛ اما از کجا می توانیم بفهمیم در کدام موارد نیاز به خلق تجربه بهتر برای کاربر وجود دارد؟”

پاسخ اسپلیت به این سوال هم بسیار جالب بود:

اگر کاربری می خواهد محصولی را بخرد نباید محتوای زیادی در اختیار او قرار دهیم، چرا که او فقط میخواهد محصول را خریداری کند و اگر قرار باشد 500 کلمه متن برای او بنویسید قطعا برای کاربر تجربه خوبی ایجاد نکرده اید.

اسپلیت این نکته را اضافه کرد که می توانید صفحاتی جداگانه برای پروموشن محصول مورد نظر ایجاد کنید و در آن محتوایی کامل در مورد محصول قرار دهید، اما در جایی که کاربر قصد خرید دارد اجازه دهید خرید خود را به راحتی و بدون مزاحمت انجام دهد.

در ادامه این صحبت ها اسپلیت به معیارهای اندازه گیری عملکرد صفحاتی که دارای Javascript هستند اشاره کرد و ابزارهایی را برای تست و بررسی عملکرد سایت معرفی کرد.

ابزارهای بررسی جاوا اسکریپت در مسیر سئو

این ابزارها معیارهای مختلفی را بررسی می کنند و اطلاعات مهمی در این مورد ارائه می دهند. یکی از معیارهای اندازه گیری که اسپلیت به اهمیت بسیار زیاد آن اشاره کرد، مدت زمانی است تا اولین محتوای معنادار صفحه (First Contentful paint) ظاهر شود.

او به این مسئله اشاره کرد که این زمان مدتی است که طول می کشد تا کاربر اولین محتوای کاربردی را در سایت مشاهده کند. مدتی که طول می کشد تا اولین محتوای معنادار برای کاربر نشان داده شود بسیار مسئله مهمی است و این زمان باید تا حد ممکن بهینه سازی شود.

“اگر قرار باشد کاربر تا زمانی که فایل های جاوا اسکریپت قابل مشاهده شوند صفحه ای سفید را مشاهده کند وضعیت خوب نیست و فرقی ندارد که اولین بایت از صفحه چه زمانی بارگذاری شده است”

در ادامه، اسپلیت ابزارهای بررسی صفحات دارای جاوا اسکریپت را معرفی کرد تا متخصصین سئو از آن برای بهبود عملکرد صفحات دارای جاوا اسکریپت استفاده کنند.

ابزار Lighthouse گوگل، اولین پیشنهاد مارتین اسپلیت بود. ابزارهای Page speed insights و Mobile friendly test موارد دیگری بودند که توسط او پیشنهاد داده شدند.

در پایان باید به این مسئله مهم اشاره کنیم که فعالیت های گوگل سیری صعودی برای افزایش رضایت هر چه بیشتر کاربران دارد. گوگل در این راه از هیچ تلاشی دریغ نمی کند. با توجه به گفته های مارتین اسپلیت در این مصاحبه اگر رضایت کاربر در گرو استفاده از جاوا اسکریپت باشد، این عنصر نه تنها به عنوان دشمنی ناسازگار برای گوگل به شمار نمی رود، بلکه به عنوان ابزاری برای افزایش رضایت کاربران مورد استفاده قرار می گیرد و هیچگونه تاثیر منفی در سئو سایت ندارد.

ادامه مطلب در سایت منبع