تگ کنونیکال چیست؟ + کاربرد تگهای Canonical در سئو
تگ کنونیکال (Canonical tag)، یک قطعه کد HTML هستش که در head صفحه وب قرار میگیره و برای معرفی نسخه اصلی یا master صفحه به کار میره. تگهای کنونیکال، ۱۵ سال سن دارن و از سال ۲۰۰۹ معرفی شدن. برای آشنایی کامل با تگهای کنونیکال تا انتهای این مقاله با من، رسول کیوانپور، همراه باشید.
ساختار تگهای کنونیکال (Canonical tags)
همانطور که بالا گفتم، تگ کنونیکال در head صفحه قرار میگیره و سینتکس اون بصورت زیر هستش:
<link rel=”canonical” href=”https://site.com/” />
در اتریبیوت href، آدرس صفحه اصلی یا کنونیکال قرار داده میشه.
- صفحه مستر یا کنونیکال (Canonical/master page): صفحهای که نسخه اصلی یا مستر یک صفحه دیگه هستش و آدرسش در اتریبیوت href تگ کنونیکال قرار داده میشه. این صفحه، تنها صفحهای هست که ایندکس میشه (بجای صفحات کنونیکال شده).
- صفحه کنونیکال شده (Canonicalized page): به صفحهای که توش تگ کنونیکال قرار گرفته و یک صفحه دیگه به عنوان صفحه مسترش معرفی شده، صفحه کنونیکال شده یا Canonicalized page میگن. صفحات کنونیکال شده، ایندکس نمیشن.
کاربرد تگ کنونیکال در سئو
تگ کنونیکال برای معرفی نسخه مستر یک صفحه به موتورهای جستجو به کار میره؛ در شرایطی که:
- یک صفحه وب، با چند آدرس URL قابل دسترسی هستش (مثلا نسخه با/بدون www و با/بدون اسلش انتهایی یا trailing slash).
- محتوای مشابه و یا کپی (duplicate content) داریم.
- URLهای پارامتردار داریم (parameterized URL)؛ برای مثال پارامترهای سرچ یا فیلتر محصولات.
Ref: agencyanalytics.com
چرا استفاده از تگ کنونیکال در سئو مهمه؟
چون اگر استفاده نکنیم و کراولر تعداد زیادی صفحه با محتوای داپلیکیت یا مشابه رو کراول کنه:
- ممکنه به دلیل تموم شدن بودجه کراول (Crawl budget)، صفحات مهم با محتوای یونیک کراول نشن.
- ممکنه صفحه اشتباه با محتوای کپی ایندکس بشه بجای صفحه اصلی.
- ممکنه چند نسخه از یک URL همزمان رتبه بگیرن و اعتبار صفحه بینشون تقسیم بشه.
بیشتر بخوانید: |
صفحات خود ارجاع یا Self-referential canonicals
هر صفحهی اصلی یا مستر رو باید به خودش کنونیکال زد (Self-referential canonical)؛ چون در صورت اضافه شدن پارامترها یا لینکدهی به صفحه با آدرسهای مختلف مثل با/بدون www، به گوگل کمک کردیم آدرس اصلی رو به راحتی تشخیص بده.
پس در واقع تمامی صفحات باید تگ کنونیکال داشته باشن؛ اگر صفحه خودش نسخه اصلی و مستر بود، به آدرس خودش کنونیکال زده میشه. اگر هم نسخه کپی یا داپلیکیت بود، آدرس صفحه مستر در اتریبیوت href از تگ rel canonical اون صفحه قرار میگیره.
آیا گوگل هر تگ کنونیکال رو قبول میکنه؟
خیر! توی سرچ کنسول بخش URL inspection tool اگر آدرس صفحه رو بزنید، در بخش Page indexing دو تا کنونیکال میبینید:
- User-declared canonical
- Google-selected canonical
گوگل هر تگ کنونیکالی رو نمیپذیره و زمانی کنونیکال رو اعمال میکنه که یک مشابهت حداقلی بین محتوای دو صفحه وجود داشته باشه. پس صرف استفاده از تگ کنونیکال کافی نیست و در مرحله بعد، گوگل هم باید اون تگ رو بپذیره و اعمالش کنه.
تفاوت تگ کنونیکال و ریدایرکت ۳۰۱
Ref: yourwebsitefirst.com/can-use-canonical-301-redirect
اولا باید به این نکته دقت کرد که تگ کنونیکال یک تذکر (hint) به موتور جستجو هستش؛ در حالیکه ریدایرکت یک دستور (directive). پس لزوما موتور جستجو تگ کنونیکال رو رعایت نمیکنه اما حتما ریدایرکت رو رعایت میکنه.
از طرف دیگه، موقع استفاده از هر دو، فقط نسخه اصلی ایندکس میشه. با این تفاوت که وقتی از تگ کنونیکال استفاده کنیم، کاربر میتونه هر دو صفحه رو ببینه (هم صفحه مستر و هم صفحه کنونیکال شده). اما وقتی یک صفحه به صفحه دیگه ریدایرکت میشه، کاربر فقط صفحه مقصد رو میتونه ببینه.
پس اگر دو صفحه مشابه یا کپی همدیگه باشن و نیازی به نگه داشتن هر دو صفحه نباشه، از ریدایرکت 301 استفاده میکنیم. اما اگر نیاز باشه هر دو صفحه بمونن و در دسترس کاربر باشن، از تگ کنونیکال استفاده میکنیم.
بیشتر بخوانید: |
چند نکته مهم در مورد Canonicalization
- سعی کنید توی تگ کنونیکال از آدرس مطلق و نه نسبی (absolute URL) استفاده کنید.
- اگر گواهی SSL دارید (https)، توی تگ کنونیکال از آدرس غیر SSL (نسخه http) استفاده نکنید!
- بهتره برای هر صفحه از تگ کنونیکال به خود اون صفحه استفاده کنید (self-referential canonical). هر چند ضروری نیست و اگر هم استفاده نکنید، ممکنه مشکلی پیش نیاد.
- در هر صفحه فقط یک تگ کنونیکال و در head صفحه بزارید. بیشتر از یک تگ یا قرار دادن اون در body، ممکنه باعث بشه موتور جستجو تگ رو نادیده بگیره.
- صفحات کنونیکال شده رو (canonicalized page) نباید نوایندکس کرد و در robots.txt دسترسی کراولر رو بست. دسترسی روبات رو نبندید چون کراولر باید صفحه رو بخونه تا بتونه تگ کنونیکال رو ببینه. از طرفی تگ meta robots noindex و تگ rel canonical رو نباید با هم استفاده کرد. این جمله رو جان مولر هم گفته. دلیلش هم اینه که از یه طرف وقتی شما توی یک صفحه تگ کنونیکال میزاری به صفحه دیگه، اگر پذیرفته بشه، صفحه اول نوایندکس خواهد شد پس اصلا نیازی به تگ نوایندکس نیست. از طرف دیگه وقتی شما نوایندکس و تگ کنونیکال رو با هم میزاری، داری سیگنالهای متناقض به گوگل میدی و انگار به گوگل میگی که پیج دوم که مستر هست رو هم ایندکس نکنه (منبع). واسه همین در مجموع بهتره این دو تگ با هم استفاده نشن.
- موقع صفحهبندی یا Pagination، هر صفحه باید به خودش کنونیکال زده بشه، نه صفحه اول (root page). چراکه مثلا محتوای صفحه ۲ با صفحه ۱ یکسان نیست که بخوایم کنونیکال بزنیم و گوگل هم اون رو بپذیره.
- توی لینکسازی داخلی، حتما به نسخه کنونیکال یا اصلی لینک بدید نه نسخههای داپلیکیت یا کپی. چون به گوگل کمک میکنه نسخهی اصلی رو راحتتر تشخیص بده.
- روشهای دیگهای هم برای مشخص کردن صفحه کنونیکال وجود داره (مثل HTTP header و sitemap). البته استفاده از همین تگ rel canonical راحتترین روش هست بنظرم 🙂 همچنین بهتره از روشهای مختلف برای مشخص کردن صفحه کنونیکال استفاده نکنید. استفاده از یک روش کافیه!
- ارورهای مرتبط با صفحات کنونیکال شده رو میتونید توی لینک زیر ببینید: (دلیل ارور و روش برطرف کردنش توضیح داده شده)
support.google.com/webmasters/answer/7440203
نسخهی خلاصه و PDF این مطلب رو توی لینکدین گذاشتم؛ از اونجا میتونید دانلود کنید👇
پست لینکدین رسول کیوان پور در مورد تگهای کنونیکال
منابع: