تگهای hreflang راهحلی فنی برای وبسایتهایی هستند که محتوایی مشابه را به زبانهای مختلف ارائه میدهند. در واقع، هدف اصلی استفاده از این تگها، هدایت کاربران به نسخه مناسب زبان یا منطقهای صفحات وب در نتایج جستجو است. تصور کنید کاربری اهل هلند است و با نسخه انگلیسی یک صفحه مواجه میشود، در حالیکه نسخه هلندی همان صفحه نیز موجود است. در چنین شرایطی، شما میخواهید گوگل نسخه هلندی را به آن کاربر نشان دهد — دقیقاً این همان مشکلی است که تگ hreflang برای رفع آن طراحی شده است.
تگهای hreflang یکی از پیچیدهترین ویژگیهای ارائهشده توسط موتورهای جستجو هستند. دلیل این پیچیدگی، نیاز به دقت بالا در پیادهسازی و صرف زمان قابل توجه برای تنظیم صحیح آنهاست. به همین دلیل، این راهنما تهیه شده تا شما را از اشتباهات رایج در اجرای hreflang دور نگه دارد. اگر در ابتدای مسیر اجرای پروژهای چندزبانه هستید، مطالعه کامل این راهنما ضروری است.
اگر در مسیر پیادهسازی hreflang به عنوان بخشی از استراتژی سئوی بینالمللی خود به راهنمایی نیاز دارید، دوره آموزش سئوی چندزبانه ما — که از طریق اشتراک آموزشی آکادمی سئوی Yoast در دسترس است — به شما کمک میکند تا این فرآیند را به خوبی درک کرده و آن را بهطور عملی اجرا کنید. با استفاده از این آموزش، در زمانی کوتاه، به یک استراتژی سئوی بینالمللی کارآمد دست خواهید یافت.

تگ hreflang چیست و چه کاربردی دارد؟
تگهای hreflang ابزاری برای علامتگذاری صفحاتی هستند که محتوای مشابهی دارند، اما برای زبانها یا مناطق جغرافیایی مختلف تولید شدهاند. به طور کلی، سه روش رایج برای استفاده از این تگها وجود دارد:
- محتوای یکسان با تفاوتهای منطقهای مانند en-US و en-GB
- محتوای ترجمهشده به زبانهای مختلف مانند en، de و fr
- ترکیب زبان و منطقه جغرافیایی برای اهداف دقیقتر
این تگها اغلب در شرایطی استفاده میشوند که باید بازارهایی را هدف قرار دهید که از زبان مشابه استفاده میکنند، اما نیازهای منطقهای متفاوتی دارند — برای مثال، تمایز بین ایالات متحده و بریتانیا یا بین آلمان و اتریش.

مزایای استفاده از hreflang در سئو
شاید این سؤال برایتان پیش بیاید که چرا باید به hreflang توجه ویژه داشته باشیم؟ در واقع، این تگ دو مزیت کلیدی از دیدگاه سئو دارد:
- ارائه تجربه کاربری بهینهتر: زمانی که نسخهای از یک صفحه برای زبان یا موقعیت مکانی خاصی طراحی شده، میخواهید کاربران دقیقاً به همان نسخه هدایت شوند. این کار باعث میشود آنها سریعتر به محتوای مناسب دسترسی پیدا کرده و نرخ بازگشت به نتایج جستجو کاهش یابد؛ عاملی که در نهایت میتواند رتبه صفحات شما را بهبود بخشد.
- جلوگیری از ایجاد محتوای تکراری: اگر نسخههای مختلفی از یک محتوا با تفاوتهای جزئی مانند قیمتها یا واحدهای پولی برای کشورهای مختلف ایجاد کردهاید (مثلاً آمریکا، بریتانیا و استرالیا)، گوگل ممکن است بدون hreflang این صفحات را به عنوان محتوای تکراری شناسایی کند. اما با استفاده از این تگ، برای موتور جستجو روشن میکنید که محتوای صفحات تقریباً یکسان است، اما با هدفگذاری جغرافیایی متفاوت ارائه شدهاند.
Hreflang چیست؟
hreflang is code, which you can show to search engines in three different ways – and there’s more on that below. Using this code, you specify all the different URLs on your site(s) with the same content. These URLs can have the same content in a foreign language or the same language but targeted at a different region.
Hreflang یک کد HTML است که به موتورهای جستجو کمک میکند تا بفهمند نسخههای مختلفی از یک صفحه وب با زبانها یا مناطق مختلف وجود دارد. شما میتوانید این کد را به سه روش مختلف به موتورهای جستجو معرفی کنید. هدف اصلی آن، مشخصکردن URLهایی است که محتوای مشابهی را با زبان یا منطقه هدف متفاوت ارائه میدهند.
هدف استفاده از hreflang چیست؟
در یک پیادهسازی کامل، هر URL باید اعلام کند چه نسخههایی از آن در زبانها یا مناطق مختلف وجود دارد. وقتی کاربر چیزی را جستجو میکند، گوگل مراحل زیر را انجام میدهد:
- تصمیم میگیرد کدام URL را در نتایج جستجو نمایش دهد؛
- بررسی میکند که آیا آن URL دارای تگ hreflang هست یا نه؛
- مناسبترین نسخه را برای کاربر بر اساس زبان یا مکان پیشنهاد میدهد؛
- تنظیمات زبان مرورگر و موقعیت مکانی کاربر تعیین میکند که کدام URL نمایش داده شود. (کاربر ممکن است چند زبان را در تنظیمات مرورگر وارد کرده باشد؛ ترتیب زبانها نیز نقش دارد.)

چه زمانی باید از hreflang استفاده کنید؟
اگر شرایط زیر را دارید، باید از hreflang استفاده کنید:
- محتوای یکسانی به زبانهای مختلف دارید؛
- محتوا برای مناطق جغرافیایی مختلف با همان زبان تولید شده است؛
- چه روی یک دامنه باشید و چه چند دامنه، میتوانید صفحات را به هم لینک دهید.
نکات مهم در معماری پیادهسازی
هنگام استفاده از hreflang، نیازی نیست بیش از حد دقیق باشید. تصور کنید سه نوع محتوای آلمانی دارید:
- نسخه عمومی آلمانی (de-de) برای آلمان؛
- نسخه خاص اتریش (de-at)؛
- نسخه خاص سوئیس (de-ch).
در چنین شرایطی اگر کسی از بلژیک به زبان آلمانی جستجو کند، گوگل کدام نسخه را باید نشان دهد؟ احتمالاً نسخه عمومی (de) بهترین انتخاب خواهد بود. پس بهتر است علاوه بر نسخههای خاص، یک نسخه عمومی نیز داشته باشید.
به خاطر داشته باشید: خاصترین گزینه در میان گزینهها برنده است، صرفنظر از ترتیب تگها. موتور جستجو همیشه سعی میکند نسخهای را انتخاب کند که بیشترین انطباق را دارد.
اصول فنی پیادهسازی
صرفنظر از اینکه از کدام روش پیادهسازی استفاده میکنید، سه قانون کلیدی وجود دارد:
۱. ویژگیهای hreflang معتبر
- میتوانید این زبان را با یک کد منطقه ترکیب کنید (طبق استاندارد ISO 3166-1 Alpha 2، مثل “US” برای آمریکا)؛
- از کدهای درست استفاده کنید، چون اشتباهات رایج زیادی در این بخش وجود دارد، مخصوصاً در انتخاب کد منطقه.
برای اطمینان از درستی کدها، از لیست رسمی کدهای زبان و منطقه در ویکیپدیا استفاده کنید.
۲. لینکهای برگشتی (Return Links)
دومین قانون کلیدی در استفاده از hreflang مربوط به لینکهای برگشتی است. مهم نیست از چه روشی برای پیادهسازی استفاده میکنید؛ هر URL باید به سایر URLهای معادل خود اشاره کند و این لینکها باید به نسخههای canonical یا متعارف ارجاع داشته باشند. در ادامه بیشتر به این موضوع میپردازیم. وقتی تعداد زبانها زیاد میشود، ممکن است وسوسه شوید که لینکهای برگشتی را محدود کنید؛ اما هرگز این کار را نکنید. اگر سایت شما در ۸۰ زبان مختلف محتوا دارد، برای هر زبان باید ۸۰ لینک hreflang داشته باشید—راه فراری نیست!
۳. لینک hreflang به خود (Self-referencing hreflang)
سومین قانون اساسی درباره لینکهایی است که URL به خودش دارد. شاید در ابتدا غیرمنطقی به نظر برسد، درست مثل لینکهای برگشتی، ولی وجود این لینکها الزامی است. بدون این لینک، پیادهسازی hreflang شما کامل نخواهد بود و درست کار نخواهد کرد.

گزینههای فنی برای پیادهسازی hreflang
سه روش اصلی برای پیادهسازی hreflang وجود دارد:
- استفاده از تگهای <link> در بخش <head> صفحات HTML
- استفاده از هدرهای HTTP
- استفاده از نقشه سایت XML
هرکدام از این روشها برای موقعیتهای خاصی مناسب هستند که در ادامه بررسیشان میکنیم:
۱. استفاده از تگهای <link> در <head> HTML
اولین روش، اضافه کردن تگهای hreflang به بخش <head> هر صفحه HTML است. نمونهای از کد:
htmlCopyEdit<link rel=”alternate” href=”https://www.example.com/” hreflang=”en” /><link rel=”alternate” href=”https://www.example.com/en-gb/” hreflang=”en-gb” /><link rel=”alternate” href=”https://www.example.com/en-au/” hreflang=”en-au” />
از آنجا که هر نسخه باید به سایر نسخهها لینک شود، این روش ممکن است منابع زیادی مصرف کند. اگر وبسایت شما ۲۰ زبان داشته باشد، باید در هر صفحه ۲۰ تگ لینک اضافه شود. این بهطور میانگین ۱.۵ کیلوبایت به حجم هر بار بارگذاری اضافه میکند. این کدها فقط برای موتور جستجو هستند و هیچگاه برای کاربران استفاده نمیشوند. همچنین CMS شما باید چندین درخواست به دیتابیس ارسال کند تا این لینکها را بسازد. برای وبسایتهای بزرگ، این روش پیشنهاد نمیشود چون سربار زیادی ایجاد میکند.
۲. استفاده از هدرهای HTTP
روش دوم مخصوص فایلهای غیر HTML مانند PDF است. از آنجا که نمیتوان تگهای <link> را در این نوع فایلها قرار داد، باید از هدرهای HTTP استفاده شود. مثالی از این هدرها:
httpCopyEditLink: <https://es.example.com/document.pdf>; rel=”alternate”; hreflang=”es”, <https://en.example.com/document.pdf>; rel=”alternate”; hreflang=”en”, <https://de.example.com/document.pdf>; rel=”alternate”; hreflang=”de”
مثل روش HTML، اینجا هم تعداد بالای هدرها ممکن است بار زیادی به سرور اضافه کند.
۳. استفاده از نقشه سایت XML
سومین روش استفاده از فایل XML sitemap است. در این روش، از ویژگی xhtml:link در نقشه سایت استفاده میشود تا به ازای هر URL نسخههای جایگزین مشخص شوند. این روش از نظر ساختاری شبیه استفاده از تگ <link> در <head> صفحات است. اگر فکر میکردید HTML لینکها طولانی هستند، این روش حتی حجیمتر است. به عنوان نمونه، فقط برای یک URL با دو زبان:
xml CopyEdit<url> <loc>https://www.example.com/uk/</loc> <!– و ادامه دارد –></url>
هر کدوم از این روشها مزایا و محدودیت خودشون رو دارن و انتخاب درست بستگی به ساختار و نیازهای فنی سایت شما داره.
پیادهسازی hreflang در نقشه سایت XML
در نمونه زیر، سه نسخه از یک URL برای زبانها و مناطق مختلف تعریف شدهاند:
xml
CopyEdit
<url>
<loc>https://www.example.com/</loc>
<xhtml:link rel=”alternate” hreflang=”en” href=”https://www.example.com/” />
<xhtml:link rel=”alternate” hreflang=”en-au” href=”https://www.example.com/au/” />
<xhtml:link rel=”alternate” hreflang=”en-gb” href=”https://www.example.com/uk/” />
</url>
همانطور که مشاهده میکنید، هر URL دارای یک تگ خودارجاع hreflang است که مشخص میکند این URL برای کدام زبان یا منطقه مناسب است. بهعلاوه، نسخههای دیگر نیز به آن اشاره شدهاند. اکنون باید تمام نسخههای URL در نقشه سایت XML آورده شوند. بنابراین، ساختار کلی به این صورت خواهد بود:
xml
CopyEdit
<url>
<loc>https://www.example.com/</loc>
<xhtml:link rel=”alternate” hreflang=”en” href=”https://www.example.com/” />
<xhtml:link rel=”alternate” hreflang=”en-au” href=”https://www.example.com/au/” />
<xhtml:link rel=”alternate” hreflang=”en-gb” href=”https://www.example.com/uk/” />
</url>
<url>
<loc>https://www.example.com/au/</loc>
<xhtml:link rel=”alternate” hreflang=”en” href=”https://www.example.com/” />
<xhtml:link rel=”alternate” hreflang=”en-au” href=”https://www.example.com/au/” />
<xhtml:link rel=”alternate” hreflang=”en-gb” href=”https://www.example.com/uk/” />
</url>
<url>
<loc>https://www.example.com/uk/</loc>
<xhtml:link rel=”alternate” hreflang=”en” href=”https://www.example.com/” />
<xhtml:link rel=”alternate” hreflang=”en-au” href=”https://www.example.com/au/” />
<xhtml:link rel=”alternate” hreflang=”en-gb” href=”https://www.example.com/uk/” />
</url>
در این ساختار، فقط مقدار <loc> در هر بخش تغییر میکند، اما تگهای hreflang مشابه باقی میمانند. این پیادهسازی تضمین میکند که ارتباط بین نسخههای مختلف هر صفحه بهدرستی مشخص شده است.
مزایای استفاده از نقشه سایت برای hreflang
نقشه سایت XML با hreflang نسبت به افزودن تگها در هر صفحه مزایای زیر را دارد:
- بار اضافی به صفحات اضافه نمیشود.
- از پیچیدگی پردازش در زمان بارگذاری صفحه جلوگیری میشود.
- تغییر نقشه سایت XML معمولاً سادهتر از تغییر همه صفحات سایت است.
- میتوان مستقیماً به فایل XML دسترسی داشت و بهروزرسانی را سریع انجام داد.
مقدار ویژه x-default در hreflang
ویژگی hreflang=”x-default” برای مواقعی استفاده میشود که هیچکدام از زبانهای تعریفشده با زبان کاربر مطابقت نداشته باشد. بهعنوان مثال:
html
CopyEdit
<link rel=”alternate” href=”https://www.example.com/” hreflang=”x-default” />
این مقدار معمولاً برای صفحات فرود بینالمللی کاربرد دارد و بهنوعی مقصد پیشفرض کاربرانی است که زبان یا منطقهشان شناسایی نمیشود. اگرچه x-default میتواند با یکی از نسخههای زبان (مثلاً de) همپوشانی داشته باشد، اما توصیه میشود هر دو مقدار را نگه دارید تا خوانایی کد حفظ شود.

ارتباط hreflang با rel=canonical
در استفاده همزمان از hreflang و rel=canonical باید دقت شود که تگ canonical به نسخهی صحیح همان زبان اشاره کند، نه یک URL عمومی یا پیشفرض. این کار از تداخل سیگنالهای سئو جلوگیری میکند.
ابزارهای بررسی صحت پیادهسازی
برای اطمینان از صحت تگهای hreflang میتوانید از ابزارهای زیر استفاده کنید:
- Merkle Hreflang Tags Testing Tool: برای بررسی آنلاین URLها.
- افزونه Chrome بررسی hreflang: بررسی سریع تگها هنگام مرور صفحات.
نگهداری و بهروزرسانی پیادهسازی hreflang
برای جلوگیری از بروز مشکلات در آینده:
- مطمئن شوید که تیم تولید محتوا از اصول hreflang مطلع است.
- هنگام حذف صفحات، صفحات جایگزین را بررسی و hreflang را بهروزرسانی کنید.
- در صورت ریدایرکت صفحات، لینکهای hreflang در سایر صفحات را نیز هماهنگ کنید.
- هرچند وقت یکبار یک بررسی کلی انجام دهید تا از صحت پیادهسازی مطمئن شوید.
نتیجهگیری
پیادهسازی hreflang میتواند فرآیندی زمانبر و دقیق باشد. با این حال، اگر بهدرستی انجام شود، تأثیر مثبت زیادی بر تجربه کاربری و سئو بینالمللی دارد. این راهنما به مرور بهروزرسانی خواهد شد تا با آخرین استانداردها هماهنگ بماند. در نهایت، برای سنجش وضعیت فنی وبسایت خود، پیشنهاد میکنیم از تست سئوی فنی استفاده کرده و بخشهای نیازمند بهبود را شناسایی کنید.