تگ های متای ربات چیستند و چگونه آن ها را پیاده سازی کنیم

تگ های متای ربات چیستند و چگونه آن ها را پیاده سازی کنیم

تگ های متای ربات ها (یا "meta robots tags") قطعاتی از کد هستند که به خزنده ها دستورالعمل هایی برای نحوه خزش یا ایندکس کردن محتوای صفحه وب می دهند. در حالی که تگ های فایل robots.txt به ربات ها پیشنهاداتی در مورد نحوه خزش صفحات یک وب سایت می دهند، تگ های متا ربات دستورالعمل های قطعی تری درباره نحوه خزش و ایندکس کردن محتوای یک صفحه ارائه می دهند.

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

دو نوع تگ متا ربات وجود دارد: آن هایی که بخشی از صفحه HTML هستند (مانند meta robots tag) و آن هایی که سرور وب به عنوان هدر HTTP ارسال می کند (مانند x-robots-tag). همان پارامترها (یعنی دستورالعمل های خزش یا ایندکس که یک تگ متا ارائه می دهد، مانند "noindex" و "nofollow" در مثال بالا) می توانند هم با meta robots و هم با x-robots-tag استفاده شوند؛ تفاوت در این است که این پارامترها چگونه به خزنده ها منتقل می شوند.

تگ های متای ربات ها

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

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

پارامترهای کنترل ایندکس شدن

در زیر پارامترهایی آورده شده اند که خزنده های موتور جستجو هنگام استفاده در تگ های متا ربات، که با نام robots tags نیز شناخته می شوند، آن ها را درک کرده و دنبال می کنند.

Noindex: به موتور جستجو می گوید که یک صفحه را ایندکس نکند.

Index: به موتور جستجو می گوید که یک صفحه را ایندکس کند. توجه داشته باشید که نیازی به افزودن این تگ متا نیست؛ این رفتار به صورت پیش فرض انجام می شود.

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

Nofollow: به خزنده می گوید هیچ لینکی در صفحه را دنبال نکند یا هیچ ارزش لینکی را منتقل نکند.

Noimageindex: به خزنده می گوید هیچ تصویری از صفحه را ایندکس نکند.

None: معادل استفاده همزمان از دو تگ noindex و nofollow است.

Noarchive: موتورهای جستجو نباید لینک کش شده ای از این صفحه را در نتایج جستجو (SERP) نمایش دهند.

Nocache: مشابه noarchive است، اما فقط توسط مرورگرهای Internet Explorer و Firefox استفاده می شود.

Nosnippet: به موتور جستجو می گوید که نباید خلاصه ای از این صفحه (مانند meta description) را در نتایج جستجو نمایش دهد.

Noodyp/noydir [منسوخ شده]: مانع می شود موتورهای جستجو از توضیحات DMOZ صفحه به عنوان خلاصه در نتایج جستجو استفاده کنند. با این حال، DMOZ در اوایل سال ۲۰۱۷ بازنشسته شد و این تگ منسوخ گردید.

Unavailable_after: موتورهای جستجو نباید پس از تاریخ مشخصی این صفحه را ایندکس کنند.

انواع تگ های متا ربات

دو نوع اصلی از تگ های متا ربات وجود دارد: meta robots tags و x-robots-tag. هر پارامتری که بتوان در تگ meta robots استفاده کرد، می تواند در x-robots-tag نیز مشخص شود.

در ادامه در مورد هر دو، یعنی تگ های meta robots و تگ های x-robots، صحبت خواهیم کرد.

تگ meta robots

تگ meta robots، که معمولاً به عنوان “meta robots” یا به طور غیررسمی “robots tag” شناخته می شود، بخشی از کد HTML یک صفحه وب است و به صورت عناصر کد در بخش صفحه وب ظاهر می شود.

تگ meta robots به طور خاص برای همان صفحه ای اعمال می شود که آن را شامل می شود، برخلاف فایل robots.txt که دسترسی را در سراسر وب سایت کنترل می کند.

تگ meta robots

نمونه کد:

<meta name="robots" content="[PARAMETER]">

در حالی که تگ عمومی <meta name="robots" content="[PARAMETER]"> استاندارد است، می توانید با جایگزینی عبارت "robots" با نام یک user-agent خاص، تگ هایی مخصوص خزنده های مشخص ایجاد کنید. به عنوان مثال، برای ارسال دستورالعملی خاص به Googlebot از کد زیر استفاده می شود:

<meta name="googlebot" content="[DIRECTIVE]">

اگر می خواهید بیش از یک دستورالعمل را در یک صفحه استفاده کنید، تا زمانی که همگی برای یک "ربات" (user-agent) هدف گذاری شده اند، می توان چند تگ را در یک دستور متا ترکیب کرد. کافی است آن ها را با ویرگول از هم جدا کنید. برای مثال:

<meta name="robots" content="noimageindex, nofollow, nosnippet">

این تگ به ربات ها دستور می دهد که هیچ تصویری از صفحه را ایندکس نکنند، هیچ لینکی را دنبال نکنند و هیچ بخشی از صفحه را در نتایج جستجو (SERP) نمایش ندهند.

اگر از تگ های متا ربات متفاوت برای user-agent های گوناگون استفاده می کنید، لازم است برای هر خزنده، تگ جداگانه ای بنویسید.

ساختار نحوی (Syntax) تگ meta robots


تگ meta robots شامل دو ویژگی (attribute) است: name و content. ویژگی name مشخص می کند که کدام خزنده باید دستورالعمل ها را دنبال کند، در حالی که ویژگی content خودِ دستورالعمل ها را تعیین می کند. متداول ترین مقادیر برای ویژگی name عبارتند از “robots” (که برای همه خزنده ها اعمال می شود) و نام های خاص مانند “googlebot” یا “bingbot”. ویژگی content می تواند مقادیر گوناگونی مانند “index”، “noindex”، “follow”، “nofollow” و غیره داشته باشد.

برای نمونه، یک تگ meta robots ممکن است به شکل زیر باشد:

<meta name="robots" content="noindex, nofollow">

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

نمونه هایی از تگ های متا ربات

تگ های noindex و nofollow از پرکاربردترین مقادیر ویژگی content هستند. تگ noindex به موتورهای جستجو می گوید صفحه را ایندکس نکنند، در نتیجه آن صفحه در نتایج جستجو نمایش داده نمی شود. تگ nofollow به آن ها دستور می دهد لینک های موجود در صفحه را دنبال نکنند، به این معنا که صفحات لینک شده هیچ ارزش لینکی (link equity) از این صفحه دریافت نمی کنند. این دو تگ می توانند جداگانه یا به صورت ترکیبی استفاده شوند، بسته به هدف مورد نظر. برای مثال، صفحه ای که شامل دستور noindex است ایندکس نمی شود، اما موتورهای جستجو ممکن است همچنان لینک های آن را دنبال کنند، مگر اینکه دستور nofollow نیز اضافه شود. استفاده همزمان از هر دو تگ تضمین می کند که صفحه نه ایندکس شود و نه ارزش لینکی منتقل کند.

 

X-robots-tag

در حالی که تگ meta robots امکان کنترل رفتار ایندکس گذاری را در سطح صفحه فراهم می کند، تگ x-robots-tag می تواند به عنوان بخشی از هدر HTTP گنجانده شود تا ایندکس گذاری کل صفحه و همچنین عناصر خاص آن را کنترل کند.

با اینکه می توانید از x-robots-tag برای اجرای تمام دستورالعمل های ایندکس مشابه meta robots استفاده کنید، دستور x-robots-tag انعطاف پذیری و قابلیت های بسیار بیشتری ارائه می دهد که meta robots ندارد. به طور خاص، x-robots اجازه استفاده از عبارات منظم (regular expressions)، اجرای دستورهای خزشی روی فایل های غیر HTML، و اعمال پارامترها در سطح جهانی را می دهد.

X-robots-tag

برای استفاده از x-robots-tag باید به فایل header.php، .htaccess یا فایل تنظیمات سرور وب سایت خود دسترسی داشته باشید. از آنجا می توانید نشانه گذاری (markup) مخصوص تگ x-robots-tag را مطابق با پیکربندی سرورتان اضافه کنید، از جمله هر پارامتری که نیاز دارید. این مقاله چند نمونه عالی از نحوه کدنویسی x-robots-tag ارائه می دهد در صورتی که از یکی از این سه نوع تنظیم استفاده می کنید.

در اینجا چند نمونه از موارد استفاده از x-robots-tag آورده شده است:

  • کنترل ایندکس گذاری محتوایی که به زبان HTML نوشته نشده است (مانند فایل های فلش یا ویدیو)
  • مسدود کردن ایندکس گذاری یک عنصر خاص از صفحه (مانند تصویر یا ویدیو) بدون جلوگیری از ایندکس گذاری کل صفحه
  • کنترل ایندکس گذاری در صورتی که به HTML صفحه (به ویژه بخش <head>) دسترسی ندارید یا اگر وب سایت از هدر سراسری استفاده می کند که نمی توان آن را تغییر داد
  • افزودن قوانین خاص برای اینکه آیا صفحه ای باید ایندکس شود یا نه (مثلاً اگر کاربری بیش از ۲۰ بار نظر داده، صفحه پروفایل او ایندکس شود)

اجرای robots meta tags

اجرای تگ های متا ربات فرایندی ساده است که شامل افزودن تگ به بخش <head> از یک صفحه HTML است. این تگ باید قبل از تگ بسته </head> قرار گیرد و شامل ویژگی های name و content باشد. برای مثال:

<meta name="robots" content="noindex, nofollow">

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

اجرای X-robots-tag

X-Robots-Tag یک هدر HTTP است که همان هدف تگ meta robots را دنبال می کند اما برای فایل های غیر HTML مانند تصاویر و PDFها به کار می رود. برای اجرای X-Robots-Tag، صاحبان وب سایت باید خط خاصی از کد را به فایل های پیکربندی وب سایت خود اضافه کنند، مانند فایل .htaccess برای سرورهای Apache یا فایل .conf برای سرورهای Nginx.
کد باید شامل دستور X-Robots-Tag و مقادیر مورد نظر مانند “noindex” یا “nofollow” باشد. برای مثال:

Header set X-Robots-Tag "noindex, nofollow"

این دستور به موتورهای جستجو می گوید فایل را ایندکس نکنند و هیچ لینکی در آن را دنبال نکنند.
استفاده از X-Robots-Tag انعطاف و کنترل بیشتری به ویژه برای محتوای غیر HTML که نمی توان مستقیماً در آن تگ متا قرار داد، فراهم می کند.

بهترین روش های سئو با استفاده از تگ های متا ربات

  • تمام تگ های متا (چه robots و چه غیر از آن) زمانی شناسایی می شوند که یک URL خزیده شود. این بدان معناست که اگر فایل robots.txt از خزیدن یک URL جلوگیری کند، هر دستورالعمل متایی که روی صفحه وجود داشته باشد (چه در HTML و چه در هدر HTTP) مشاهده نخواهد شد و عملاً نادیده گرفته می شود.
  • در اکثر موارد، استفاده از تگ meta robots با پارامترهای “noindex, follow” باید به عنوان روشی برای محدود کردن خزیدن یا ایندکس گذاری به جای استفاده از robots.txt توصیه شود.
  • توجه به این نکته مهم است که خزنده های مخرب احتمالاً تگ های متا را کاملاً نادیده می گیرند و در نتیجه این پروتکل به عنوان مکانیزم امنیتی مناسب نیست. اگر اطلاعات خصوصی دارید که نمی خواهید به صورت عمومی قابل جستجو باشد، از روشی امن تر مانند محافظت با رمز عبور استفاده کنید تا از مشاهده صفحات محرمانه توسط بازدیدکنندگان جلوگیری شود.
  • لازم نیست هر دو تگ meta robots و x-robots-tag را در یک صفحه استفاده کنید؛ انجام این کار تکراری و غیرضروری است.

منبع Moz

۲۰
۱۴۰۴/۷/۳۰