Hreflang деген не: қателер мысалдарымен толық нұсқаулық

Бұл мақалада: hreflang қарапайым тілмен не екені, оны әртүрлі URL құрылымдары үшін қалай жазу керектігі, тілдер мен аймақтар кодтарының кестесі, Google және Yandex үшін айырмашылықтар, типтік қателер, тексеру тізімі және жиі қойылатын сұрақтарға жауаптар.
Hreflang — бұл HTML-атрибуты, ол іздеу жүйелеріне сайттың қай беттері бір-бірінің аудармалары екенін және әр нұсқаның қай тілге немесе аймаққа арналғанын хабарлайды. Қарапайым тілмен айтқанда: бұл Google мен Yandex-ке «мына бет — Ресей үшін орыс тілінде, ал мынау — Германия үшін неміс тілінде, оларды бір-бірінің орнына көрсетпеңіз» деп айту тәсілі.
Hreflang жоқ көптілді сайт нұсқа таңдауын іздеу жүйесіне қалдырады. Егер әртүрлі тілдердегі беттер бірдей құрылым мен мағынаны қамтыса, іздеу жүйесі оларды қайталанатын деп санап, нәтижелерде тек біреуін қалдыруы мүмкін – әдетте, нақты пайдаланушыға қажет емес нұсқаны. Дұрыс конфигурацияланған hreflang бұл белгісіздікті жойып, нұсқаларды тілдік және аймақтық сегменттер бойынша бөледі.

Hreflang деген не және ол не үшін қажет

hreflang — бұл rel="alternate" сілтеме атрибуты, ол іздеу жүйесіне қай URL мекенжайлары ағымдағы беттің тілдік немесе аймақтық нұсқалары екенін көрсетеді.
Hreflang жоқ болса, іздеу жүйесі мыналарды істей алады:
  • Германиядан келген пайдаланушыларға орыс нұсқасын көрсету
  • Аудармаларды қайталанатын мазмұн деп санап, оларды бір құжатқа біріктіру
  • Аймақтық нұсқаларды сәйкес жергілікті нәтижелерде көрсетпеу
hreflang арқылы іздеу жүйесі мынаны біледі: бұл Германияға арналған неміс тіліндегі бет, бұл Францияға арналған француз тіліндегі бет, ал бұл ағылшын тіліндегі бет — қалғандары үшін. Оның көмегімен бір тілдің әртүрлі аймақтары үшін әртүрлі нұсқаларды орнатуға, сондай-ақ бір ел үшін бірнеше тілді көрсетуге болады — мысалы, Канада үшін ағылшын және француз тілдері (en-CA және fr-CA). Бұл локализация үшін маңызды: Канадада француз тілінде де бағалар канадалық доллармен, ал Францияда — еуромен көрсетіледі.

hreflang қалай көрінеді

Атрибут әр беттің <head> бөліміне қосылады:
<link rel="alternate" hreflang="ru" href="https://mysite.com/ru/about/" />
<link rel="alternate" hreflang="en" href="https://mysite.com/en/about/" />
<link rel="alternate" hreflang="de" href="https://mysite.com/de/about/" />
<link rel="alternate" hreflang="x-default" href="https://mysite.com/en/about/" />
Негізгі бөліктер:
  • rel="alternate" — бұл беттің балама нұсқасы екенін көрсетеді
  • hreflang="ru" — ISO 639-1 бойынша тіл коды
  • href — нұсқаның толық абсолютті URL мекенжайы (хаттамасымен және доменімен)
  • hreflang="x-default" — егер басқа ешқайсысы сәйкес келмесе, әдепкі нұсқа

Кесте: жиі кездесетін тіл және аймақ кодтары

Атрибут форматы: тіл немесе тіл-ЕЛ. Міне, жиі қате жіберілетін кодтар:
Код
Мән
ru
орыс (кез келген аймақ)
ru-RU
орыс, Ресей
en
ағылшын (кез келген аймақ)
en-US
ағылшын, АҚШ
en-GB
ағылшын, Ұлыбритания
de
неміс
fr
француз
fr-CA
француз, Канада
kk
қазақ (kz емес — бұл тілдің емес, елдің коды)
hy
армян (am емес — бұл да аймақ коды)
uz
өзбек
x-default
әдепкі нұсқа
Ел коды тек бір тілге арналған мазмұн әртүрлі аймақтарда ерекшеленсе ғана қосылады.
  • Тек тіл — hreflang="en" — елге қарамастан барлық ағылшын тілді пайдаланушылар үшін
  • Тіл + ел — hreflang="en-US" АҚШ үшін, hreflang="en-GB" Ұлыбритания үшін — мысалы, доллармен немесе фунтпен бағалар
  • Егер мазмұн тілдің барлық тасымалдаушылары үшін бірдей болса, елсіз тіл коды жеткілікті

Өзара байланыс: жиі бұзылатын ереже

Әр бет барлық тілдік нұсқаларға, соның ішінде өзіне де (self-referencing) hreflang сілтемесін қамтуы керек. Бұл өте маңызды ереже: егер сізде үш тіл болса, әр нұсқа өзіне қоса, барлық үшеуіне сілтеме жасауы керек. Бұл іздеу жүйесі нұсқалардың өзара байланысын түсінетін жабық сілтемелер жиынтығын жасайды.
Дұрыс: орыс бетінде неміс, ағылшын және өзіне сілтемелер бар. Неміс бетінде — орыс, ағылшын және өзіне сілтемелер бар. Ағылшын бетінде — орыс, неміс және өзіне сілтемелер бар.
Қате: орыс және неміс тілдерінде ағылшын тіліне сілтемелер бар, бірақ ағылшын тілінде кері сілтемелер жоқ. Іздеу жүйесі мұндай іске асыруды дұрыс емес деп санайды және бүкіл жиынтықты елемеуі мүмкін.
<!-- Дұрыс hreflang жиынтығының мысалы -->
<link rel="alternate" hreflang="de" href="https://mysite.com/de/about/" />
<link rel="alternate" hreflang="ru" href="https://mysite.com/ru/about/" />
<link rel="alternate" hreflang="en" href="https://mysite.com/en/about/" />
<link rel="alternate" hreflang="x-default" href="https://mysite.com/en/about/" />

x-default: қалғандары үшін нұсқа

hreflang="x-default" — бұл пайдаланушыға басқа ешбір нұсқа сәйкес келмеген кезде көрсетілетін бет үшін арнайы мән. Әдетте бұл сайттың негізгі тіліндегі нұсқасы (көбінесе орыс немесе ағылшын тілінде).
Егер сізде ағылшын тіліндегі нұсқасыз орыс және қазақ нұсқалары болса, x-default-ті олардың біріне көрсетуге болады немесе мүлдем қолданбауға болады. Бұл міндетті атрибут емес, бірақ Google ұсынады.

Іске асыру нұсқалары

<head> ішіндегі тегтерден басқа, hreflang-ті көрсетуге болады:
HTTP тақырыптары арқылы. PDF және басқа HTML емес ресурстар үшін бұл жалғыз нұсқа.
Сайт картасы арқылы. Әр беттегі атрибуттардың орнына — бір sitemap, онда әр сілтеме үшін осы беттің басқа тілдердегі нұсқалары тізімделген. Google үшін үлкен сайттарға ыңғайлы.
Барлық нұсқалар Google үшін тең мәнді — қолдауға оңайын таңдаңыз. Айтпақшы, Multify қажетті метатегтерді беттердің HTML-кодына да, сайт картасына да автоматты түрде қосады.

Маңызды айырмашылық: Google және Яндекс hreflang-ті әртүрлі өңдейді

Hreflang бойынша орыс тілді нұсқаулықтардың көпшілігі тек Google-ға назар аударып жазылған — ал рунет пен ТМД-ға бағытталған сайттар үшін бұл суреттің жартысы ғана.
  • Google таңбалаудың барлық үш әдісін қолдайды: <head> ішіндегі HTML-тегтер, HTTP-тақырыптар және XML Sitemap ішіндегі hreflang.
  • Яндекс XML Sitemap арқылы hreflang қолдауын тоқтатты. Яндекс үшін тілдік және аймақтық нұсқаларды көрсетудің жалғыз сенімді әдісі — әр беттің <head> ішіндегі <link rel="alternate" hreflang="..."> HTML-тегтері.
Практикалық қорытынды: егер сізде Яндекс-те (Ресей, Қазақстан, Беларусь) аудитория болса, sitemap-ті іске асыруға сенбеңіз — ол Google үшін жұмыс істейді, бірақ Яндекс-те әсер етпейді. <head> ішіндегі тег — екі жүйеде де бірдей жұмыс істейтін жалғыз нұсқа.

Hreflang-ті қолмен жазғыңыз келмей ме?

Multify кез келген тілді қосқан кезде барлық беттер үшін hreflang-ті автоматты түрде жасайды — HTML-да да, сайт картасында да.

Типтік қателер

Ahrefs зерттеуіне (374 756 домен) сәйкес, hreflang қолданатын сайттардың 67%-ында кем дегенде бір іске асыру қатесі бар.

Қате 1: Өзара сілтемелер жоқ

Ең жиі кездесетін қате. Тексеріңіз: әр нұсқаның әр бетінде барлық басқа нұсқаларға hreflang бар ма? Егер жоқ болса, іздеу жүйелері сайт құрылымын дұрыс түсіндірмеуі және белгілеуді мүлдем ескермеуі мүмкін.

Қате 2: Қате немесе салыстырмалы URL

Hreflang протоколмен абсолютті URL талап етеді: https://mysite.com/en/about/, ал /en/about/ емес. Салыстырмалы жолдар жұмыс істемейді. Сондай-ақ, сәйкестік маңызды: егер canonical URL соңында қиғаш сызықпен болса (/about/), онда hreflang-та да қиғаш сызық болуы керек — және керісінше.

Қате 3: hreflang канондық емес URL-ге сілтейді

Егер мақсатты беттің өзі rel="canonical" арқылы басқа URL-ге белгіленсе, іздеу жүйесі оны балама нұсқа ретінде елемеуі мүмкін. Hreflang әр нұсқаның канондық мекенжайына қатаң сілтеуі керек, көшірмеге немесе параметрленген URL-ге емес.

Қате 4: Жоқ нұсқа

Hreflang-та жоқ бетке сілтеме көрсетілген — мысалы, барлық тауарлар аударылмаған, бірақ атрибуттар барлығына жазылған. Іздеу жүйесі 404 қатесін тауып, сәйкес келмейтін блокты елемейді. Егер беттің аудармасы болмаса, оған hreflang көрсетпеңіз.

Қате 5: Бір бетте қайталау

Бір бетте бірдей hreflang бар екі атрибут — мысалы, плагиндердің қақтығысы немесе белгілеуді қолмен өңдеу салдарынан. Google біріншісін алады, екіншісін елемейді; нәтижесі болжаусыз.

6-қате: Тіл коды дұрыс емес

hreflang="kk" – қазақ тілі үшін дұрыс код (ISO 639-1 тізімі бойынша). Kz қолдануға болмайды – бұл елдің коды, тілдің емес. Армян тілінде де осы қате: hy – тіл коды, am – аймақ коды.

7-қате: Редиректтегі немесе бұғатталған беттегі hreflang

Егер hreflang бар бет 301-редирект берсе, іздеу жүйесі онымен бірге жүріп, атрибутты жоғалтады – hreflang аралық бетте емес, соңғы бетте болуы керек. Robots.txt-те жабылған URL мекенжайларымен немесе индекстелмейтін беттермен (noindex) де солай: олардағы hreflang ескерілмейді.

Hreflang қалай тексеруге болады

Hreflang Testing Tool. Қателерді көрсетеді: қате атрибуттар, кері сілтемелердің жоқтығы. Кемшілігі — беттерді қолмен жүктеу керек.
Screaming Frog немесе Ahrefs. Бүкіл сайтты сканерлеу. Screaming Frog 500 URL мекенжайына дейін тегін сканерлейді және өзара тексерумен барлық hreflang атрибуттарын көрсетеді.
Google Search Console «Халықаралық таргеттеу» бөлімінде (Domain property ретінде расталған домендер үшін) hreflang қателерінің бір бөлігін көрсетеді, бірақ толыққанды краулерді алмастырмайды.

Hreflang жарияламас бұрын тексеру тізімі

  • Әр нұсқа өзіне және барлық басқа нұсқаларға сілтеме жасайды (өзара)
  • Барлық URL абсолютті, протоколмен және келісілген қиғаш сызықтармен
  • hreflang канондық, индекстелетін, 200 URL беретін сілтемені көрсетеді
  • Тіл кодтары ISO 639-1-ге, ел кодтары ISO 3166-1-ге сәйкес келеді (kk/kz, hy/am шатастырмаңыз)
  • Берілген тілдер/аймақтардан тыс пайдаланушылар үшін x-default бар
  • Яндекс үшін белгілеу тек sitemap-та ғана емес, <head> ішіндегі тегтермен қайталанған

hreflang және Tilda

Tilda hreflang-ті өздігінен қоспайды. Нұсқалар іс жүзінде шектеулі:
HTML-блок арқылы қолмен. <link> тегтерін код блогына қосу. Сайт құрылымы өзгерген кезде — қолмен жаңарту. Динамикалық каталог беттеріне немесе блогқа жарамайды. Шағын сайттар үшін — қолайлы.
Multify арқылы. Прокси барлық тілдік нұсқалардың барлық беттері үшін, соның ішінде тауарлар мен блог мақалалары үшін hreflang-ті автоматты түрде жасайды. Тіл қосылған кезде атрибуттар бірден барлық жерде пайда болады, өзара байланыс автоматты түрде сақталады — және белгілеу Google үшін де, Yandex үшін де дұрыс жұмыс істейді.
50 беті және 3 тілі бар сайтта hreflang-ті қолмен қолдау — бұл 150 атрибут жиынтығы. Әрбір бетті немесе тілді қосу барлық нұсқаларда жаңартуды талап етеді. Автоматтандыру мұны толығымен шешеді.

Hreflang-ты қолмен жұмыс істемей қосамыз

Сайттағы кез келген өзгерістер кезінде hreflang-ті автоматты түрде жасайтын Multify-ды қолданып көріңіз — Google және Yandex қолдауымен.

Hreflang-ты бірінші реттен дұрыс орнатуға дайынсыз ба?

Multify Tilda-дағы сайттың барлық тілдік нұсқалары үшін дұрыс hreflang-ты автоматты түрде орнатады — Google және Яндекс қолдауымен, қолмен белгілеусіз және жоғарыдағы тексеру тізіміндегі қателер қаупінсіз.

Жиі қойылатын сұрақтар

Hreflang сайтты аударумен бірдей ме?
Жоқ. Hreflang мазмұнды аудармайды және тілдік нұсқаларды жасамайды, ол тек іздеу жүйесіне қандай бар беттер бір-бірінің нұсқалары ретінде байланысты екенін хабарлайды. Алдымен бөлек URL мекенжайларында аударылған мазмұн қажет, содан кейін оларды байланыстыратын hreflang қажет.
Сайтта бір ғана тіл болса, hreflang қажет пе?
Жоқ, әзірге мазмұн мен аудитория толығымен сәйкес келеді. Hreflang бір беттің екінші тілдік немесе аймақтық нұсқасы пайда болған кезде қажет болады.
Hreflang-ті x-default-сыз қолдануға бола ма?
Болады, бұл міндетті емес атрибут. Бірақ онсыз тілі ешбір нұсқаға сәйкес келмейтін пайдаланушылар іздеу жүйесінің таңдауы бойынша әдепкі нұсқаны алады, сіз таңдаған нұсқаны емес.
Hreflang Яндекс жүйесінде жұмыс істейтінін қалай тексеруге болады?
Яндекс.Вебмастердегі индекстеу бөлімі беттердің қандай тілдік нұсқалары индекстелгенін көрсетеді. Егер hreflang тек sitemap-та белгіленсе, бірақ бастапқы кодта тегтермен белгіленбесе, Яндекс оны ескермейді.
Tilda сайтында hreflang-ті қалай орнатуға болады?
Tilda-да жеке жобалар немесе тілдік блоктар арасында кірістірілген hreflang механизмі жоқ. Тегтерді әр беттің параметрлерінде қолмен немесе барлық нұсқалар үшін hreflang автоматты түрде жасалатын прокси арқылы жазуға болады. Бұл қалай жұмыс істейтіні Multify басты бетінде көрсетілген.

Multify-ді сіздің сайтыңызға қосамыз

Сұрақтарыңызға берген жауаптарыңыз сайтыңызды қалай жақсырақ қосуға болатынын түсінуге көмектеседі

Сайт түрі
Беттер саны
Айлық сайтқа кірушілер саны
Байланысудың қолайлы әдісі *