فرض کنید یک تیم فوتبال دارید. در حالت طبیعی، هر بازیکن وظیفه مشخصی دارد؛ مدافع از دروازه محافظت میکند، مهاجم تلاش میکند گل بزند، هافبکها بازی را هدایت و توپ را ش پخش میکنند و دروازهبان وظیفه مهار توپ را دارد. اما اگر همه بازیکنان بخواهند فقط مهاجم باشند و همزمان برای زدن گل تلاش کنند، نظم تیم به هم میریزد. نه کسی دفاع میکند، نه کسی دروازه را پوشش میدهد و نتیجه این میشود که تیم بهجای موفقیت، دچار سردرگمی و ضعف میشود.
این وضعیت در دنیای سئو زمانی اتفاق میافتد که چند صفحه از سایت شما محتوای مشابه یا هدف یکسانی از نظر کلمه کلیدی داشته باشند. در این حالت، گوگل نمیتواند تشخیص دهد کدام صفحه باید اولویت داشته باشد و ممکن است هیچکدام از آنها جایگاه خوبی در نتایج نگیرند.
اینجاست که تگ کنونیکال (Canonical Tag) نقش بسزایی دارد. این تگ به موتور جستوجو اعلام میکند کدام صفحه نسخه اصلی است و باید مبنای رتبهبندی قرار گیرد. پس اگر مدیر سایت یا کارشناس سئو هستید، این راهنما مخصوص شماست. در ادامه، با مفهوم کنونیکال، کاربرد آن و نحوه استفاده صحیح از آن آشنا خواهید شد.
تگ کنونیکال چیست؟
تگ کنونیکال (Canonical Tag) قطعهای از کد HTML است که نسخه اصلی صفحات تکراری یا مشابه سایت شما را به موتورهای جستوجو معرفی میکند. اگر محتوای مشابهی در چند آدرس مختلف داشته باشید، با این تگ میتوانید مشخص کنید کدام صفحه باید به عنوان نسخه اصلی ایندکس شود. استفاده از تگ کنونیکال راهحلی موثر برای جلوگیری از مشکلات ناشی از محتوای تکراری است و به بهبود جایگاه صفحات شما در نتایج جستوجو کمک میکند.
تگ کنونیکال چطور ساخته میشود؟
در تگهای کنونیکال از قواعد سادهای استفاده میشود. این تگها در قسمت head صفحههای تکراری یا مشابه قرار میگیرند:
به زبان ساده، معنی هر یک از بخشهای کد بالا از این قرار است:
• link rel=“canonical” : این قسمت به موتورهای جستوجو میگوید که این تگ کنونیکال است و لینک بعدی نسخه اصلی صفحه را نشان میدهد؛
• href=“https://example.com/sample-page/”: این آدرس همان صفحه اصلی است که باید ایندکس شود.
تگهای کنونیکال چه اهمیتی برای سئو دارند؟
اگرچه گوگل به محتوای تکراری جریمهای مستقیم اعمال نمیکند، اما علاقهای به تکرار ندارد زیرا محتوای تکراری باعث دشوارتر شدن کار گوگل در موارد زیر میشود:
- انتخاب یک صفحه برای ایندکس کردن (تنها یک صفحه از میان صفحاتی که تکراری تشخیص داده میشوند ایندکس میشود)
- انتخاب یک نسخه بهمنظور کسب رتبه برای جستوجوهای مرتبط
- تصمیمگیری درباره اختصاص ارزش لینک به یک صفحه یا تقسیم آن بین چند صفحه
وجود محتوای تکراری زیاد میتواند «بودجه خزش» (Crawl Budget) شما را نیز تحت تاثیر قرار بدهد؛ به این معنی که ربات گوگل ممکن است به جای پیدا و ایندکس کردن سایر مطالب و محتواهای مهمی که در سایت دارید، زمان خود را برای بررسی نسخههای متعدد از یک برگه تلف کند.
تگهای کنونیکال یکی از راهحلهای برطرفکردن این مشکل هستند. این تگها برای گوگل مشخص میکنند که کدام نسخه از یک برگه باید ایندکس شده و رتبه دریافت کند و ارزش لینکهای دریافتی به کجا باید تعلق بگیرد.
اگر از تگ کنونیکال استفاده نکنید، خود گوگل دست به کار خواهد شد: گوگل خودش تصمیم میگیرد کدام صفحه را به عنوان نسخه اصلی ایندکس کند که ممکن است با صفحهای که شما در نظر دارید متفاوت باشد.
گوگل در بخش راهنمای توسعهدهندگان خود (Google Search Central)، اعلام کردهاست که بهتر است از ابزار بررسی آدرس (URL Inspection) استفاده کنید تا ببینید گوگل کدام صفحه را به عنوان کنونیکال در نظر گرفته است. حتی اگر شما بهطور واضح یک صفحه را به عنوان کنونیکال مشخص کنید، گوگل ممکن است به دلایل مختلفی مانند کیفیت محتوا، صفحه دیگری را به عنوان کنونیکال انتخاب کند.
پیش از اینکه برای رفع مشکل اقدام کنید، بهتر است بررسی کنید آیا صفحهای که گوگل انتخاب کرده برای کاربران گوگل مناسبتر و منطقیتر است یا صفحهای که شما مشخص کردهاید. اینگونه میتوانید تصمیم درستی بگیرید.
مشکل محتوای تکراری در سایت
شاید تصور کنید از آنجا که محتوای تکراری در سایت ندارید، نیازی هم به استفاده از تگ کنونیکال وجود ندارد. اما باید بدانید که موتورهای جستوجو به جای محتوا، آدرسهای (URL) صفحات شما را بررسی میکنند.
برای مثال، ربات گوگل آدرسهای example.com/product و example.com/product?color=red را به عنوان دو صفحه مجزا میشناسد، حتی اگر محتوای آنها یکسان یا بسیار مشابه باشد.
این نوع آدرسها که به آنها «Parameterized URLs» یا آدرسهای پارامتردهی شده گفته میشود، معمولا در فروشگاههای اینترنتی که از فیلترهای مختلف برای نمایش محصولات استفاده میکنند، بهوفور دیده میشوند و یکی از شایعترین دلایل ایجاد محتوای تکراری هستند.
بنابراین، حتی در صورت نداشتن محتوای تکراری آشکار، تفاوت در آدرسها میتواند باعث شود موتورهای جستوجو صفحات مشابه را به عنوان صفحات جداگانه در نظر بگیرند و این مسئله در عملکرد سئوی سایت تاثیر منفی بگذارد.
مثال عملی: فرض کنید یک فروشگاه اینترنتی پوشاک دارید و صفحه اصلی دستهبندی پیراهنها به این صورت است:
https://www.abc.com/clothing/shirts.html
اگر سایز XL را در فیلتر محصولات انتخاب کنید، پارامتری به انتهای آدرس اضافه میشود:
https://www.abc.com/en-gb/clothing/shirts.html?Size=XL
اگر علاوه بر آن رنگ آبی را هم انتخاب کنید، پارامتر دیگری اضافه میشود:
https://www.abc.com/en-gb/clothing/shirts.html?Size=XL&color=Blue
هرچند از دید شما همه این آدرسها مربوط به یک صفحه هستند، اما گوگل آنها را صفحات متفاوتی در نظر میگیرد.
البته مشکل محتوای تکراری محدود به فروشگاههای اینترنتی نیست. در هر سایت ممکن است موارد زیر باعث ایجاد محتوای تکراری شود:
- آدرسهای پارامتردهی شده برای جستجو، مانند example.com?q=search-term
- آدرسهایی با شناسه نشست (Session ID)، مانند https://example.com?sessionid=3
- وجود نسخه چاپی مجزا از صفحات، مانند example.com/page و example.com/print/page
- چند دستهبندی برای یک پست، مانند example.com/services/SEO/ و example.com/specials/SEO/
- صفحات مخصوص دستگاههای مختلف، مثل نسخه موبایل m.example.com و نسخه اصلی example.com
- نسخههای AMP و غیر AMP از یک صفحه
- آدرسهای دارای www و بدون www، یا نسخههای http و https از سایت
در همه این موارد، استفاده صحیح از تگ کنونیکال ضروری است تا موتورهای جستوجو بتوانند نسخه اصلی صفحات را به درستی شناسایی کنند.
مساله محتوای تکراری در دامنههای متفاوت
مساله مهم دیگری که باید به آن توجه داشته باشید، وجود محتوای تکراری در دامنههای مختلف است. برای مثال، اگر سایت دیگری محتوای شما را کپی و منتشر (همنشر یا syndicate) کرد، باید از آن سایت بخواهید که در صفحه تکراری، تگ کنونیکال به آدرس صفحه اصلی شما اضافه کند.
این کار باعث میشود که علاوه بر دریافت ترافیک از آن سایت، گوگل نیز صفحه اصلی شما را به عنوان مرجع شناسایی کند و رتبهبندی مناسبی به آن اختصاص دهد.البته برخی سایتها ممکن است از اضافه کردن تگ کنونیکال خودداری کنند و در این صورت ریسک کاهش رتبه محتوای اصلی بر عهده شما خواهد بود.
اصول استفاده از تگ کنونیکال : چگونه از تگهای کنونیکال استفاده کنیم؟
استفاده از تگهای کنونیکال بسیار ساده است. در ادامه این مطلب به چهار روش پیاده سازی این تگها در برگههای سایت اشاره خواهیم کرد؛ اما فارغ از اینکه از کدام روش استفاده میکنید، پنج قانون طلایی وجود دارد که همیشه باید به خاطر داشته باشید:
قانون 1: از آدرس دهی absolute یا مطلق استفاده کنید
استفاده از آدرس دهی مطلق در لینک rel=“canonical” توصیه یکی از تحلیلگران گوگل است. لذا باید به جای ساختار زیر که حاوی یک آدرس relative یا نسبی است:
< link href=”https://example.com/canonical-page/” rel=”canonical” />
از این ساختار استفاده کنید:
قانون 2: از حروف کوچک استفاده کنید
از آنجایی که ممکن است گوگل آدرسهای حاوی حروف کوچک و بزرگ را به عنوان آدرسهای متفاوتی تلقی کند، لازم است که در آدرس تگ کنونیکال خود از حروف کوچک استفاده نمایید.
قانون 3: از نسخه درست دامنه خود استفاده کنید (Https یا Http)
اگر از SSL استفاده میکنید، مطمئن شوید که در تگهای کنونیکال خود از آدرسهای غیر SSL (یعنی Http) استفاده نکردهاید؛ در غیر اینصورت احتمال ایجاد ابهام و دریافت نتایج غیرمنتظره وجود خواهد داشت. بنابراین، اگر از حالت امن استفاده میکنید، باید به جای:
< link href=”http://example.com/sample-page/” rel=”canonical” />
از این ساختار استفاده نمایید:
< link href=”https://example.com/sample-page/” rel=”canonical” />
طبیعتا اگر از حالت امن استفاده نمیکنید، باید عکس حالت بالا عمل کنید.
قانون 4: از تگهای کنونیکال Self-Referential یا خودارجاع استفاده کنید
اگرچه این مورد از نظر گوگل اجباری نیست، اما توصیه میشود که از تگهای کنونیکال Self-referential یا خود ارجاع استفاده کنید؛ زیرا حتی اگر فقط یک برگه داشته باشید، باز هم این امکان وجود دارد که به خاطر مواردی که در بالا اشاره کردیم (مثل اضافه شدن پارامترها به انتهای آدرس)، نسخه متفاوتی از آدرس مورد نظر در نتایج جستجو رتبه به دست بیاورد.
اگر نمیدانید که تگ کنونیکال خود ارجاع چیست، باید بگوییم که منظور ما تگ کنونیکالی است که به همان برگهای که در آن قرار گرفته لینک دارد. به عنوان مثال، اگر آدرس ما https://example.com/sample-page باشد، تگ خود ارجاعمان خواهد بود:
< link href=”https://example.com/sample-page” rel=”canonical” />
اغلب سیستمهای مدیریت محتوای مدرن به طور خودکار تگ کنونیکال خود ارجاع را به پستها اضافه میکنند؛ اما اگر از سیستمهای متفاوتی استفاده میکنید باید از یک توسعه دهنده کمک بگیرید.
قانون 5: برای هر برگه فقط از یک تگ کنونیکال استفاده کنید
اگر در یک برگه از چند تگ کنونیکال استفاده شده باشد، گوگل همه آنها را نادیده میگیرد. بنابراین لازم است که در هر برگه فقط از یک تگ استفاده کنید.
روش قرار دادن تگهای کنونیکال در سایت
برای تعیین آدرسهای کنونیکال میتوانید از چهار روش استفاده کنید:
• تگ HTML (rel=canonical)
• هدر HTTP
• سایت مپ
• ریدایرکت یا تغییر مسیر 301
در ادامه به شرح تک تک این مراحل میپردازیم.
تنظیم کنونیکال با استفاده از تگهای HTML rel=“canonical”
سادهترین و بدیهیترین روش برای مشخص کردن یک آدرس بهعنوان آدرس کنونیکال یا اصلی، استفاده از تگ کنونیکال (کد <link rel=”canonical” href=”…”>) است. هرچه این تگ را در بخش بالاتر (یعنی نزدیکتر به ابتدای بخش <head>) صفحات وب قرار دهید، بهتر است. یعنی اگر این کد را در ابتدای بخش <head> بگذارید، موتورهای جستوجو راحتتر و سریعتر آن را پیدا میکنند و تشخیص میدهند:
< link href=”https://example.com/canonical-page/” rel=”canonical” />
برای نمونه، اگر در فروشگاه اینترنتی خود تیشرت میفروشید و چند آدرس مختلف برای نمایش تیشرتهای مشکی دارید، علاوه بر آدرس اصلی
https://yourstore.com/tshirts/black-tshirts/
یک یا چند آدرس دیگر مثل
https://yourstore.com/offers/black-tshirts/
نیز وجود دارد، شما باید به موتورهای جستوجو اعلام کنید کدام آدرس نسخه اصلی است.
برای این کار کافی است کد زیر را در بخش <head> همه صفحات تکراری قرار دهید تا آدرس اصلی مشخص شود:
< link href=”https://yourstore.com/tshirts/black-tshirts/” rel=”canonical” />
دقت کنید که اگر از سیستمهای مدیریت محتوا استفاده میکنید معمولا نیازی به دستکاری کدها نخواهید داشت. به عنوان مثال، در وردپرس با نصب افزونه رایگان Yoast SEO، تگهای کنونیکال خود ارجاع به طور خودکار اضافه خواهند شد. برای افزودن تگهای دیگر به بخش Advanced یا تنظیمات پیشرفته این افزونه در هر برگه مراجعه نمایید.
تنظیم کنونیکال در هدرهای HTTP
برای اسناد و فایلهایی مانند فایلهای PDF، راهی برای قرار دادن تگ کنونیکال در هدر صفحه نداریم؛ چرا که اساساا قسمت head وجود ندارد. در این حالت برای تنظیم برگه کنونیکال باید از هدرهای HTTP (HTTP Headers) استفاده کنید.
برای مثال، اگر ما یک نسخه PDF از همین پست تهیه کنیم و آن را در پوشه وبلاگمان قرار دهیم (modireweb.com/blog)، هدر HTTP ما برای آن فایل شبیه به این خواهد بود:
HTTP/1.1 200 OK
Content-Type: application/pdf
Link: ; rel=”ca
nonical”
البته پیادهسازی این مدل از تگ کنونیکال نیاز به دسترسی به تنظیمات سرور یا CDN دارد.
تنظیم کنونیکال در سایت مپ
گوگل توصیه میکند که در نقشه سایت (سایتمپ) فقط آدرسهای کنونیکال (URLهای اصلی) قرار دهید، زیرا این آدرسها بهعنوان نسخههای اصلی صفحات به موتور جستجو معرفی میشوند. با این حال، باید بدانید که گوگل همیشه URL موجود در سایتمپ را به عنوان نسخه کنونیکال انتخاب نمیکند. اگر صفحهای دارای تگ کنونیکال باشد که به URL دیگری اشاره میکند، گوگل معمولا URL مقصد تگ کنونیکال را ایندکس میکند. بنابراین، تگ کنونیکال به طور مستقیم در سایتمپ تعریف نمیشود و بیشتر نقش راهنما را برای گوگل دارد تا نسخه اصلی صفحه را انتخاب کند.
اشتباهات رایج در تعیین آدرس کنونیکال
تعیین آدرسهای کنونیکال یک مبحث کمابیش پیچیده است. به همین دلیل، سوءبرداشتها و اشتباهات بسیاری در رابطه با روش درست انجام آن شکل گرفته است که از جمله متداولترین آنها میتوان به موارد زیر اشاره کرد:
مسدودسازی آدرس کنونیکال به وسیله robots.txt
مسدود کردن آدرس در فایل robots.txt مانع بررسی آن توسط ربات گوگل میشود؛ در نتیجه، تگ کنونیکال موجود در آدرس مورد نظر هم برای گوگل قابل مشاهده نخواهد بود. این به نوبه خود باعث میشود که ارزش لینک نیز از نسخه غیر کنونیکال به نسخه کنونیکال انتقال پیدا نکند.
noindex کردن آدرس کنونیکال
هرگز نباید همزمان از noindex و rel=canonical استفاده کنید. این دو به نوعی متضاد هم محسوب میشوند. البته، گوگل معمولاً برای تگ کنونیکال اولویت قائل میشود؛ اما باز هم به کار بردن هر دوی اینها درست نیست. اگر میخواهید یک آدرس را noindex و کنونیکال کنید، از ریدایرکت 301 استفاده کنید؛ در غیر اینصورت، تگ rel=canonical را به کار ببرید.
تنظیم یک کد وضعیت 4XX برای آدرس کنونیکال
تنظیم یک کد وضعیت 4XX برای آدرس کنونیکال همان تأثیر استفاده از تگ noindex را خواهد داشت. در این حالت هم گوگل نمیتواند تگ کنونیکال را مشاهده کند و ارزش لینک را به نسخه کنونیکال انتقال بدهد.
اشتباه در صفحات تقسیمبندیشده (Paginated)
در صفحات تقسیمبندیشده مثل صفحه اول، دوم و سوم یک دستهبندی، نباید همه صفحات را به صفحه اول canonical کنید. این کار باعث میشود گوگل فقط صفحه اول را ایندکس کند و بقیه صفحات را نادیده بگیرد. در این موارد، یا از تگ rel=”next” و rel=”prev” استفاده کنید یا هر صفحه را به خودش canonical کنید.
عدم استفاده از تگ کنونیکال با تگهای hreflang
از تگهای hreflang برای تعیین زبان و هدفگیری جغرافیایی در صفحات وب استفاده میشود. گوگل در وبسایت پشتیبانی خود اعلام کرده که باید هنگام استفاده از hreflang یک صفحه کنونیکال به همان زبان مشخص کنید یا در صورتی که یک کنونیکال برای همان زبان وجود ندارد، بهترین زبان جایگزین را انتخاب نمایید.
تفاوت تگ کنونیکال با ریدایرکت 301 و تگ Noindex
در سئو، تگ کنونیکال، ریدایرکت ۳۰۱ و تگ noindex ابزارهایی هستند که برای مدیریت محتوای تکراری و کنترل نحوه دیدهشدن صفحات در نتایج جستجو به کار میروند. با وجود شباهت در کاربرد کلی، عملکرد هرکدام متفاوت است و استفاده نادرست از آنها میتواند منجر به کاهش رتبه صفحات در نتایج گوگل شود.
تگ کنونیکال به موتورهای جستجو اعلام میکند که یک صفحه خاص، نسخه اصلی میان چند صفحه مشابه است. این تگ باعث انتقال سیگنالهای سئو مانند بکلینکها به آدرس اصلی میشود، در حالیکه همه صفحات همچنان در دسترس کاربران باقی میمانند.
ریدایرکت ۳۰۱ یک انتقال دائمی از یک URL به URL دیگر است. این روش نه تنها کاربران را مستقیما به آدرس جدید هدایت میکند، بلکه اعتبار و ارزش سئوی صفحه قدیمی را نیز به صفحه جدید منتقل میکند. از این روش زمانی استفاده میشود که صفحهای بهطور کامل حذف یا جایگزین شده باشد.
تگ noindex به موتورهای جستوجو دستور میدهد که صفحه موردنظر را در نتایج جستجو نمایش ندهند. این گزینه زمانی مناسب است که صفحهای (مانند صفحات ورود یا محتوای کمارزش) ارزش ایندکسشدن را نداشته باشد .
انتخاب صحیح میان این سه گزینه، بستگی به هدف نهایی شما از حفظ یا حذف صفحه در نتایج جستجو دارد.
جادوی تگ کنونیکال در سال ۲۰۲۵: کلام آخر
در سال ۲۰۲۵، با افزایش روزافزون تولید محتوا و اضافه شدن روزانه میلیونها صفحه جدید به وب، موتورهای جستوجو بیش از هر زمان دیگری با محدودیت منابع برای پردازش، خزش و ایندکس صفحات مواجه هستند. این یعنی موتورهای جستوجو مانند گوگل ناچار هستند تا بودجه خزش (Crawl Budget) را هوشمندانهتر از گذشته تخصیص دهند و تنها صفحاتی را اولویت دهند که از نظر ساختاری و محتوایی بهینه و بدون تکرار باشند.
در چنین شرایطی، استفاده صحیح از تگ کنونیکال دیگر صرفا یک توصیه سئویی نیست؛ بلکه ضرورتی راهبردی برای بقای محتوای شما در نتایج جستوجو است. صفحاتی که محتوای مشابه دارند ولی بدون تگ کنونیکال رها شدهاند، نهتنها ممکن است توسط الگوریتمهای گوگل بهعنوان صفحات کمارزش نادیده گرفته شوند، بلکه میتوانند منجر به هدررفت بودجه خزش شوند. این یعنی گوگل ممکن است بهجای خزش صفحات مهم و ارزشمند سایت شما، وقت خود را صرف بررسی نسخههای تکراری و بدون اولویت کند. در نتیجه، عدم مدیریت موثر محتوای مشابه از طریق rel=”canonical” میتواند مستقیما بر رتبهبندی و دیدهشدن محتوای اصلی شما تاثیر منفی بگذارد.