جان مولر از گوگل به این سوال پاسخ داد که آیا مسدود کردن گوگلبات برای ایندکس کردن پاپآپ تایید سن که بازدیدکنندگان سایت ملزم به مشاهده آن هستند، مشکلی ندارد یا خیر. پاسخ او شفافسازیهایی را درباره اینکه آیا پنهان کردن عمدی برخی انواع محتوا از گوگلبات مجاز است یا خیر، ارائه میدهد و توضیح میدهد که صاحبان سایت چگونه میتوانند این کار را انجام دهند.
سوال درباره پنهان کردن پاپآپ تایید سن
گوگل از ناشران میخواهد که به گوگلبات اجازه دهند هر آنچه را که ممکن است یک کاربر ببیند، کرال کند، اما این موضوع همیشه به این صورت نبوده است. در روزهای اولیه سئو، زمانی وجود داشت که متخصصان سئو برای بهینهسازی بودجه کرال و تشویق به ایندکس بهتر وبسایت، گوگل را از دانلود فایلهای JavaScript و CSS منع میکردند.
اما زمانی فرا رسید که گوگل شروع به رندر کردن صفحات وب کرد و متعاقباً از صاحبان سایتها خواست تا به گوگلبات اجازه دهند تمامی منابعی را که یک کاربر مشاهده میکند، دانلود کند. برخی از سایتهایی که همچنان مانع دانلود منابع حیاتی توسط گوگل میشدند، بهطور موقت رتبه خود را از دست دادند.
بنابراین، این پرسش که آیا مسدود کردن گوگل برای ایندکس کردن یک پاپآپ مشکلی ندارد، پرسشی منطقی است.
یک متخصص SEO در ردیت پرسید که آیا استفاده از robots.txt برای جلوگیری از ایندکس کردن یک پاپآپ تایید سن (که وبسایت از نظر قانونی ملزم به نمایش آن به بازدیدکنندگان است) توسط گوگلبات مشکلی ندارد یا خیر.
این فرد وبسایت فرضیای را توصیف کرد که یک پاپآپ تایید سن را از طریق یک API از یک دامنه مجزا بارگذاری میکند. پرسش این بود که آیا مسدود کردن گوگلبات از کرال کردن آن دامنه خارجی، مانع از نمایش پاپآپ میشود یا خیر.
آنها پرسیدند:
«فرض کنید من وبسایتی به نام websiteA.com دارم – به دلایل قانونی، این سایت دارای یک پاپآپ تایید سن است که روی یک دامنه مجزا قرار دارد و از طریق یک API در صفحه درج میشود. بیایید آن را verificationpopup.com بنامیم»
فرض کنید میخواستم جلوی مشاهده این مورد توسط گوگل را بگیرم – اگر در robots.txt سایت verificationpopup.com دستور disallow را اضافه کنم، آیا این کار مانع از رندر شدن پاپآپ توسط گوگل میشود؟
(این صرفاً یک سوال فرضی است و بابت پرسیدن این سوال احمقانه پوزش میطلبم، من خیلی اهل مسائل فنی نیستم)”
مولر میگوید مسدود کردن این پاپآپ خاص مشکلی ندارد
مولر تأیید کرد که استفاده از robots.txt برای جلوگیری از رندر شدن پاپآپ تأیید سن توسط گوگلبات بهطور کلی کارساز خواهد بود. او همچنین رویکرد جایگزینی را پیشنهاد داد که شامل مسدود کردن یک فایل جاوااسکریپت مسئول بارگذاری پاپآپ است.
او پاسخ داد:
«این کار بهطور کلی کارساز خواهد بود. اگر برای انجام این کار از یک فایل اسکریپت JS خاص استفاده میکنید، میتوانید آن فایل جاوااسکریپت خاص را نیز از طریق robots.txt مسدود کنید. (اگر تنها یک فایل JS دارید که چندین کار مختلف را انجام میدهد، من این کار را انجام نمیدادم)»
پاسخ مولر نشان میدهد که الگوریتمهای گوگل ممکن است نسبت به گذشته منعطفتر شده باشند، حداقل در مورد مواردی مانند پاپآپهای تأیید سن. پاسخ او تأیید کرد که صاحبان سایت میتوانند از robots.txt استفاده کنند تا از رندر کردن پاپآپ تأیید سن توسط Googlebot جلوگیری کنند، حتی زمانی که آن پاپآپ برای بازدیدکنندگان وبسایت نمایش داده میشود.
او چند ساعت بعد بازگشت تا با جزئیات بیشتر درباره دو روش برای انجام این کار توضیح دهد و به دو شیوهی بارگذاری پاپآپ و منابعی که صاحب سایت میتواند کنترل کند، بپردازد.
دو روش برای جلوگیری از رندر کردن پاپآپ توسط Googlebot
مولر توضیح داد که رویکرد اول شامل مسدود کردن گوگلبات (Googlebot) از کرال کردن دامنه خارجی است که پاپآپ تایید سن را ارائه میدهد.
در شرایطی که یک دامنه خارجی منبع منبعی باشد که نیاز به مسدود شدن دارد، فایل robots.txt آن دامنه میتواند کرال کردن را ممنوع کند؛ در این صورت گوگلبات آن منابع را واکشی نخواهد کرد و بنابراین نمیتواند از آنها برای رندر کردن پاپآپ استفاده کند. مولر گفت که این موضوع در مورد منابع مربوط به تبلیغات رایج است، جایی که یک فایل جاوااسکریپت مسئول نمایش تبلیغات توسط robots.txt مسدود میشود.
مولر توضیح داد:
برای توضیح بیشتر دو گزینه:
محتوای سایتِ جاسازیشده توسط robots.txt مسدود شده است. اگر محتوایی از verificationpopup-com را در سایت خود جاسازی کنید (مثلاً از طریق iframe یا با فراخوانی یک اسکریپت در verificationpopup-com و غیره)، و verificationpopup-com تمام کرالها را ممنوع کرده باشد، آنگاه کرالرهایی که از robots.txt پیروی میکنند (مانند Googlebot) آن محتوا را واکشی نخواهند کرد و از آن در رندر کردن استفاده نمیکنند.
بسیاری از سرویسهای تبلیغاتی به همین صورت عمل میکنند. Googlebot این URL ها را مانند یک صفحه مجزا کرال نمیکند، اما سعی میکند آنها را در طول فرآیند رندر کردن واکشی کند؛ و اگر robots.txt مانع آن شود، محتوا را واکشی نمیکند و نمیتواند از آن استفاده کند. شما باید اطمینان حاصل کنید که صفحاتتان همچنان بارگذاری میشوند حتی زمانی که آن URL ها واکشی نمیشوند، اما برای مواردی از این دست، این معمولاً مشکلی نیست.
سایت شما از یک فایل JS خاص برای بارگذاری این مورد استفاده میکند و خودتان آن را مسدود کردهاید. برای مثال، شاید از فایلی مانند “load-verification-popup.js” برای انجام این کار استفاده میکنید. اگر آن صفحه را در سایت خود از طریق robots.txt مسدود کنید، آن اسکریپت در طول فرآیند رندرینگ بارگذاری نخواهد شد (توسط robots.txt مسدود شده است).
بر اساس تجربه من، این مورد کمتر رایج است اما یک گزینه محسوب میشود. اگر robots.txt در verificationpopup-com چیزی نیست که بتوانید روی آن تأثیر بگذارید، در صورتی که بخواهید از نمایش یا استفاده از آن در طول رندرینگ جلوگیری کنید، باید این کار را انجام دهید.
بنابراین جهت خلاصه سازی، روش دوم شامل مسدود کردن یک فایل JavaScript است که برای بارگذاری پاپآپ در دامنه دیگری استفاده میشود؛ جایی که استفاده از robots.txt یک گزینه نیست.
نکته کلیدی
بخش جالب پاسخ مولر این است که او روشی را برای جلوگیری عمدی از رندر شدن یک پاپآپ تایید سن توسط گوگلبات (Googlebot) که بازدیدکنندگان انسانی ملزم به مشاهده آن هستند، تایید کرد.
او همچنین توضیح داد که وقتی گوگلبات نمیتواند منابع مسدودشده را واکشی کند، وبسایت باید همچنان به درستی بارگذاری شود. او در مورد یک پاپآپ تایید سن مانند آنچه در سوال توصیف شده بود، اشاره کرد که این موضوع معمولاً مشکلی ایجاد نمیکند.
نتیجه کلی این است که استفاده از robots.txt برای جلوگیری از دانلود و رندر کردن یک پاپآپ تایید سن توسط Googlebot مشکلی ندارد، حتی اگر بازدیدکنندگان انسانی ملزم به مشاهده آن باشند. پاسخ مولر نشان میدهد که صاحبان وبسایت تا حدی بر منابعی که Googlebot در حین رندر کردن استفاده میکند، از جمله منابعی که بخشی از تجربه ارائه شده به بازدیدکنندگان هستند، کنترل دارند.
