آیا گوگل واقعا می تواند به محتوای جاوا اسکریپت دسترسی پیدا کند؟
شنبه 20 آذر 1400آیا گوگل امکان دسترسی به محتوای جاوا اسکریپت را دارد؟ ما در این مطلب قصد داریم کمی بیشتر درباره دسترسی گوگل به محتوای جاوا اسکریپت صحبت کنیم.
Matt Cutts می گوید گوگل می تواند به محتوای جاوا اسکریپت و AJAX دسترسی پیدا کند. البته این دسترسی تنها به برخی از محتواهای جاوا اسکریپت و AJAX امکان پذیر است. شواهدی وجود دارد که گوگل از طریق گوگل کروم در وب می خزد و همین عامل نیز نشان می دهد که گوگل چگونه می تواند به این محتوای جاوا اسکریپت دسترسی پیدا کند.
یک سوال مهم در خصوص محتوای جاوا اسکریپت
ممکن است برای برخی از افراد این سوال پیش بیاید که آیا گوگل می تواند جاوا اسکریپت و AJAX را اجرا کند؟ این سوال چندین بار در انجمن های مختلف از جمله انجمن پرسش و پاسخ SEOmoz پرسیده شده است و بسیاری از متخصصان وب درباره آن نظر داده اند. این سوال توسط بسیاری از کاربران و مشتریانی که نیازمند استفاده از خدمات وب هستند نیز پرسیده می شود.
جواب این سوال چیست؟ آیا گوگل واقعا می تواند به محتوای جاوا اسکریپت دسترسی پیدا کند و آن را بخواند؟ یک پاسخ ابتدایی به این سوال این است که طبق نظر برخی از کارشناسان گوگل می تواند محتوای جاوا اسکریپت را بخواند ولی برای ایندکس کردن این محتوا حتما باید آن را داخل HTML قرار دهید. با وجود این که این جواب تقریبا یک جواب کامل است ولی بسیاری از افرادی که در این حوزه فعالیت دارند را راضی نمی کند.
یک راه خوب برای بررسی دسترسی گوگل به محتوای جاوا اسکریپت
تنها راه برای دانستن این که گوگل واقعا چه کاری با محتوای جاوا اسکریپت انجام می دهد این است که انواع مختلف جاوا اسکریپت و AJAX را تست کرده و بررسی کنید که گوگل دقیقا چه چیزی را ایندکس می کند. مشکل این است که ما برای تست کردن انواع جاوا اسکریپت و AJAX محدودیت هایی داریم و به همین علت نیز بهتر است که چند مورد از اسکریپت های اساسی که وب سایت ها برای تعامل با محتوا از آنها استفاده می کنند را بررسی کنیم. با بررسی نتایج حاصل از این آزمایش در خصوص دسترسی گوگل به محتوای جاوا اسکریپت ما به نتیجه گیری های جذابی رسیدیم که در این مطلب قصد داریم کمی بیشتر درباره آنها صحبت کنیم و اطلاعاتی را در اختیار شما قرار دهیم.
شروع ساده با متد document.write
در جاوا اسکریپت به طور کلی چند راه ساده برای قرار دادن محتوا در بدنه یک صفحه وب وجود دارد. یکی از این روش ها استفاده از متد document.write می باشد. این متد در واقع یک رشته و متغیر متنی را به صورت مستقیم در بدنه صفحه وب می نویسد.
زمانی که از متد document.write به صورت مستقیم در صفحه ای که گوگل در آن می خزد استفاده کردیم متوجه شدیم که گوگل موفق شد آن صفحه را ایندکس کند. این روش اگر یکی ساده ترین متد برای انجام این کار نباشد قطعا یکی از ساده ترین ها است.
با این حال در بسیاری از موارد جاوا اسکریپت( و محتوای جاوا اسکریپت که داخل آن قرار می دهیم) از طریق یک فایل جاوا اسکریپت خارجی در یک صفحه وب قرار می گیرد. در دومین آزمایش یک فایل آزمایشی که دارای همان اسکریپت document.write بود ولی کد و محتوای آن را داخل یک فایل خارجی جاوا اسکریپت قرار داده بودیم را به یک صفحه که توسط گوگل خزیده میشد لینک کردیم.
گوگل این صفحه آزمایشی را ایندکس کرد اما شاید برای شما جالب باشد که بدانید محتوای جاوا اسکریپت که توسط یک فایل خارجی درون آن قرار داده شده بود را ایندکس نکرد. بنابراین طبق این آزمایش و آزمایش های بعدی به نظر می رسد که گوگل نمی تواند محتوای موجود در یک فایل خارجی جاوا اسکریپت را بخواند. البته این تقریبا منطقی است چرا که محتوا بخشی از فایلی نیست که گوگل در آن خزیده است.
استفاده از روش innerHTML
روش دیگری که برای نوشتن محتوای جاوا اسکریپت وجود دارد استفاده از innerHTML می باشد. این ویژگی در واقع محتوای یک عنصر موجود در صفحه وب را به روز رسانی می کند. به عنوان مثال اگر شما یک پاراگراف در وب سایت خود دارید می توانید از innerHTML استفاده کنید تا محتوای موجود در آن پاراگراف را به راحتی هرچه تمام تغییر دهید.
در این روش نیز دقیقا مانند روش document.write از دو فایل استفاده کردیم. اولین بار فایل جاوا اسکریپت که شامل محتوایی بود که در صفحه وب قرار داشت توسط گوگل خزیده شد.
فایل آزمایشی دوم محتوای جاوا اسکریپت در داخل یک فایل خارجی قرار گرفت.
نتیجه استفاده از این روش نیز دقیقا مشابه روش document.write بود. زمانی که محتوای جاوا اسکریپت در داخل صفحه وب بود گوگل آن محتوا را بدون مشکل ایندکس کرد. زمانی که محتوا در داخل یک فایل خارجی قرار گرفت گوگل با وجود ایندکس کردن صفحه وب آن محتوا را ایندکس نکرد.
تب ها و عملکردشان برای دسترسی گوگل به محتوای جاوا اسکریپت
پس از آن که چند مثال ساده را مورد بررسی قرار دادیم اجازه دهید تا با جزئیات بیشتری درباره این موضوع صحبت کنیم. همان طور که می دانید یکی از مهم ترین کاربردهای جاوا اسکریپت ایجاد محتوای تب دار(tabbed content) می باشد. تب ها می توانند یک تجربه کاربری فوق العاده را ایجاد کنند و به شکستن صفحات وب طولانی کمک شایانی کنند. راه های زیادی برای قرار دادن تب ها در صفحه وب شما وجود دارد. ما برای این کار از دو اسکریپت مختلف استفاده می کنیم که اولی تب های jQuery و دومی تب های AJAX هستند.
بررسی دو روش مختلف برای ایجاد تب ها در جاوا اسکریپت
زمانی که اسکریپت ها در داخل مرورگر مشاهده می شوند رفتار یکسانی را از خود نشان می دهند که این رفتار در واقع همان تقسیم کردن محتوا به چندین تب مختلف می باشد. با این حال شاید برای شما جالب باشد که بدانید اسکریپت jQuery کل محتوا را در داخل یک صفحه قرار داد. در ادامه براساس تبی که شما روی آن کلیک می کنید این اسکریپت محتوای مورد نیاز را نمایش داده یا مخفی می کند. در عوض اسکریپت مربوط به تب های AJAX حتی اگر به نظر برسد که محتوا در داخل یک فایل در مرورگر مشاهده می شود آن را به فایل های مختلفی تقسیم بندی می کند.
نکاتی درباره استفاده از تب ها برای دسترسی گوگل به محتوای جاوا اسکریپت
از آنجایی که رویکرد تب jQuery محتوا را در یک صفحه نگه می دارد گوگل قادر است که کل آن محتوا را به راحتی ایندکس کرده و به محتوای جاوا اسکریپت دسترسی کامل داشته باشد. مهم تر از آن این است که گوگل تمام آن محتوا را به صفحه اصلی مرتبط می کند. بنابراین شما می توانید برای بهینه سازی سایت خود به آن محتوا تکیه کنید.
زمانی که از تب های AJAX استفاده می کنیم گوگل فایل های خارجی را به صورت جداگانه ایندکس می کند. بنابراین گوگل محتوای شما را به صورت چند صفحه مجزا ایندکس خواهد کرد. همین عامل نیز باعث می شود تا محتوای داخل تب ها به یک صفحه خاص مرتبط نشوند. به عبارت دیگر می توان گفت که گوگل نمی تواند متوجه شود که همه تب های AJAX باید به یک صفحه خاص مرتبط شوند.
صحبت پایانی
بله گوگل می تواند برای یافتن محتوای جاوا اسکریپت مقداری از کدهای آن را اجرا کند اما باید دقت داشته باشید که گوگل محدودیت هایی را در خصوص این که دقیقا چه کاری می تواند انجام دهد و چه چیزی را می تواند متوجه شود دارد. بهترین روشی که برای دسترسی گوگل به محتوای شما وجود دارد این است که محتوای خود را به راحتی داخل HTML قرار دهید. به عنوان مثال شما می توانید به جای استفاده از تب های AJAX که محتوا را در چندین فایل مختلف پخش می کند از تب های جی کوئری برای قرار دادن محتوا در داخل یک فایل استفاده کنید. به طور کلی با این روش ها شما می توانید دسترسی گوگل به محتوایی که در صفحات سایتتان دارید را ساده تر کنید.
- Java Script
- 1k بازدید
- 0 تشکر