Какво е hreflang и как се прилага за различни езикови версии на уебсайт

Hreflang е HTML атрибут, въведен от Google през 2011 г., за да укаже какви са връзките между различните езикови версии на дадена уеб страница. Уместно е да се използва тогава, когато дадена уеб страница има версии на няколко езика или няколко версии за различни грографски региони (държави).

Например, един уеб сайт може да има една версия на английски език за Великобритания, друга версия на английски език за САЩ и трета за Канада. А за Канада, уебсайтът може да има версии, както на английски език, така и на френски език.

За да се избегне риска от наказания от търсачките (SEO) поради дублирано съдържание, както и за да се укаже на търсачките – коя версия на даден уеб сайт за кой регион е създадена, е прието да се използва HTML атрибутът hreflang.

Сдържание

Какво е hreflang?

Hreflang е HTML атрибут (tag или етикет), описан в документа RFC 8288. Влага се в мета данните на дадена уеб страница (HTML документ) в head частта, за да укаже на търсачките, че страницата има алтернативни версии на различни езици или за различни региони.

Защо използването на hreflang е важно за класирането в търсачките (SEO)?

Преди да отговорим на въпроса защо използването на hreflang тагове е важно за класирането на сайтовете в търсачките, нека да видим кои търсачки вземат предвид hreflang атрибутите.

За кои търсачки hreflang таговете са фактор за класиране?

Google, и Yandex вземат под внимание hreflang таговете, така че ако желаете да класирате сайта си в резултатите на тези две търсачки е силно препоръчително за използвате hreflang арибути за алтернативните езикови версии на дадена страница.

За Bing hreflang етикетите нямат кой знае каква тежест. За идентифициране на езика на дадена уеб страница, търсачката на Microsoft използва посочения HTML атрибут за език на съдържанието (<html lang=“en“>), връзките, които сочат към сайта, както и разбира се – какви са посетителите на сайта. Въпреки това в своята документация отBing все още препоръчват да използвате hreflang атрибути.

Търсачката Baidu е в другаат крайност и изобщо не отчита hreflang таговете. За идентифициране на езика на съдържанието отнво се използва HTML атрибута на езика на съдържанието.

Как hreflang таговете влияят на класирането на сайтовете?

Ще разгледаме няколко аспекта на този въпрос.

Потребителски сигнали и степен на отпадане

За търсачките е важно да могат да преценят – коя от всички езикови версии да поднесат на даден потребител. Ако на китаец бъде предложена българска версия на даден сайт – той светкавно ще се върне в SERP-а, за да потърси по подходящ резултат.

Така, при погрешно идентифициране на езика на сайта, степента на отпадане се увеличава, а потребителските сигнали са важен фактор за класиране.

Наказания за дублирано съдържание

Този аргумент е от изключителна важност. Представете си, че дадена страница е създадена в две версии: едната на британски английски за Великобритания и втора на американски английски за САЩ с правопис на американски английски. 

Тези две страници ще са почти идентични и ще изглеждат, като дублирано съдържание за алгоритъма на Google. Търсачката ще се затрудни да прецени коя от двете версии да индексира. Ако ги оцени, като дублирано съдържание, може да индексира и само едната страница.

Hreflang таговете са сигнал за Google каква е връзката между тези страници. Търсачката ще има указание коя версия да покаже на съответните потребители.

Все пак е хубаво да се има предвид, че hreflang таговете са сигнал, а не директива. Използването на hreflang тагове е сред добрите практики за идентифициране за кои региони е предназначена дадена страница.

За допълнителни подсказки се използва валутата, в която са посочени цените на страницата (напр. USD за САЩ и GBP за UK), специфични и различаващи се думи в двата езика и др. Дублираното съдържание не е проблем за преведените страници.

Къде могат да се поставят hreflang таговете?

Hreflang таговете могат да се приложат по следните 3 начина:

  • в мета данните в head частта на HTML документ (уеб сайт или уеб страница) – този начин изглежда най-лесен начин, но при него се допускат най-много грешки и работата е най-обемна, тъй като hreflang таговете следва да се поставят на всяка една страница за всички езикови версии;
  • в http header-а за страници, които не са HTML документи, например PDF файлове;
  • в xml картата на сайта с атрибута xhtml:link – изглежда по-сложно от първия метод с поставяне на hreflang таговете в мета данните на HTML документа, но реално този метод с поставяне на hreflang таговете в xml картата на сайта е по-практичен, тъй като всичко е в един документ, а не е разхвърляно на всяка страница. При този метод се допускат по-малко грешки и обемът работа е доста по-малък.

Какъв е синтаксисът при използване на hreflang tag?

Синтаксисът на Hreflang етикетът не е сложен. Ето как изглежда той и какво е значението на отделните елементи в него:

<link rel="alternate" hreflang="x" href="https://sample.com/alternate-page" />

  1. rel="alternate": тази страница има алтернативни версии;
  2. hreflang=“x”: алтернативните версии са на различен език – „x“;
  3. href=“https://sample.com/alternate-page”: на кой URL адрес е алтернативната страница.

Eто как би се използвал hreflang атрибутът за няколко езикови версии на страницата https://divaneto.com/primer/:

  • <link rel="alternate" hreflang="bg" href="https://divaneto.com/primer/" /> – страницата на български език
  • <link rel="alternate" hreflang="en" href="https://divaneto.com/en/primer/" /> – страницата на английски език
  • <link rel="alternate" hreflang="de" href="https://divaneto.com/de/primer/" /> – страницата на немски език
  • <link rel="alternate" hreflang="fr" href="https://divaneto.com/fr/primer/" /> – страницата на френски език
  • <link rel="alternate" hreflang="es" href="https://divaneto.com/es/primer/" /> – страницата на испански език

Какви езикови кодове се използват с атрибута hreflang?

Както е видно по-горе, за указване на езиковата версия са утвърдени двубуквени кодове по номенклатурата ISO 639-1

Вариантите се усложняват, ако за всяка версия желаем да укажем не само на какъв език е, но и за какъв географски регион е предназначена. Например, може да има една страница на английски език за Великобритания и друга за САЩ.

За тези случаи се използва друга номенклатура – ISO 3166-1 alpha-2. При нея първо с двубуквен код се указва езика на страницата и след тире с двубуквен код се указва държавата. Например:

  • bg-bg – страница на български език, която е предназначена за потребители в България;
  • en-bg – страница на английски език, която е предназначена за потребители в България (например чужденци, които са в страната);
  • de-bg – страница на немски език, която е предназначена за потребители в България (например чужденци, които са в страната);
  • fr-bg – страница на френски език, която е предназначена за потребители в България (например чужденци, които са в страната);
  • fr-ca – страница на френски език, която е предназначена за потребители в Канада;
  • en-gb – страница на английски език, която е предназначена за потребители във Великобритания;
  • en-us – страница на английски език, която е предназначена за потребители в САЩ;

А ето и примери с hreflang атрибута:

  • <link rel="alternate" hreflang="bg-bg" href="https://divaneto.com/" /> – страницата на български език за България
  • <link rel="alternate" hreflang="en-bg" href="https://divaneto.com/en/" /> – страницата на английски език за потребители в България
  • <link rel="alternate" hreflang="de-bg" href="https://divaneto.com/de/" /> – страницата на немски език за потребители в България
  • <link rel="alternate" hreflang="de-de" href="https://divaneto.de/" /> – страницата на немски език за потребители в Германия
  • <link rel="alternate" hreflang="en-gb" href="https://divaneto.co.uk/" /> – страницата на английски език за потребители във Великобритания.

Видно от примерите – релациите между различните езикови версии могат да бъдат, както в рамките на един домейн, така и между различни домейни.

Езикова версия по подразбиране?

След като има алтернативни страници на различни езици и за различни региони, следва да се укаже коя от тези версии да се отваря по подразбиране за тези потребители, които не попадат в изрично описаните варианти.

Ето как изглежда такъв скрипт <link rel=“alternate“ hreflang=“x-default“ href=“https://sample.com/“ />

Указването коя от алтернативните езикови версии да е версията по подразбиране не е задължително, но е препоръчително.

Често срещани грешки при прилагане на hreflang

Макар и използването на hreflang атрибут да не изглежда сложно, има по-често срещани грешки, които намерите по-долу, за да ги имате предвид и да ги избягвате.

Не са описани всички езикови версии

Тази грешка се допуска, когато проектът започва на един език и за един регион. Например – както е в случая със сайта divaneto.com. В момента има само една езикова версия на български език.

Ако на по-късен етап се добавят още две езикови версии, например на немски и на английски, то грешка е да се добавят hreflang атрибути за новите версии на немски и английски, без да се добави hreflang атрибут за първата версия – българската.

В заключение – ако една страница има алтернативи на няколко езика, за всеки един от тях следва да бъде добавен hreflang атрибут.

Грешни езикови или регионални кодове

По-горе бе осочено какви са утвърдените номенклатури за езикови и регионални кодове. Въпреки това, не винаги се правят справки в тях и се допускат грешки. Например – за регион Великобритания погрешно се използва uk, вместо gb.

За дадена страница са посочени два или повече езика

Друга често срещана грешка е, ако за една страница са въведени два или повече hreflang атрибута за различни езици. Това не е допустимо. Ако дадена страница обслужва повече езикови и регионални версии, може да се посочи, че е по подразбиране.

Линкът в hreflang атрибута не е canonical

Не е коректно линкът в hreflang атрибута да не е canonical. Rel=“alternate” hreflang=“x” ще инструктира търсачките да покажат преведената (локализирана) версия на страница, докато rel=canonical атрибут ще маркира, че това не е достоверната (канонична) версия. Тези два атрибута ще си противоречат и объркват търсачките.

Некоректно е изписан hreflang тагът

Случва се hreflang атрибутът да е изисан погрешно. Прегледайте дали сте спазили правилата за синтаксиса за изписване на тага.

Hreflang линкът води към липсваща страница

Използването на hreflang за посочване на връзките между различни езикови версии на една страница няма да сработи, ако hreflang таг води към несъществуваща страница.

Две или повече страници за една и съща езикова версия или регион

Друга грешка при използване на hreflang tag е ако за един език или регион посочите две или повече страници.

Не е указан hreflang по подразбиране (X-default)

Въпреки, че това изискване не е сред задължителните, то е силно препоръчително и липсата на таг по подразбиране може да създаде проблеми с различните алтернативни езикови версии на една страница.

Кои грешки с hreflang се игнорират от Google?

Google заобикалят и игнорират някои от горе описание грешки. Най-често следните:

Използването на долна черта, вместо тире

Според указанията, при комбиниране на език и регион следва да се ползва тире. Но тъй като често по грешка се използва долна черта – от Google могат да игнорират такава грешка:

Използването на en-UK вместо en-GB за Великобритания

Това е сред най-често срещаните грешки. Изключението е посочено, като допустимо и в самата номенклатура. Все пак е желателно – правилата да се спазват в противен случай рискувате проблеми с класирането.

Липсва hreflang за самата страница

Препоръчително е да се добави hreflang таг за всички езикови версии, а не само за алтернативите на текущата страница. Но понякога Google не отчитат такъв пропуск за грешка. Все пак, бъдете акуратни и не разчитайте да минете между капките.

Относителни или абсолютни URL адреси

Инструмент за генериране на hreflang тагове

За безпогрешно генериране на hreflang тагове можете да използвате следния инструмент: https://www.aleydasolis.com/english/international-seo-tools/hreflang-tags-generator/

Използването на hreflang тагове не е толкова сложно, но изисква внимание и концентрация. Може да има критично значение за класирането на сайта Ви в Google.