eduardweb.
SEO & PerformanceIntermediar#architecture#seo#webdev#html

Hreflang pentru site-uri multi-country (.ro + .com): Cum îl configurezi corect fără să-ți distrugi SEO-ul

De Alin Pătrașcu, 29 mai 2026 · 5 vizualizări · 3 like-uri

Postat 29 mai 2026
html
<!-- Pe pagina https://site.ro/despre-noi -->
<link rel="alternate" hreflang="ro" href="https://site.ro/despre-noi" />
<link rel="alternate" hreflang="en" href="https://site.com/about-us" />
<link rel="alternate" hreflang="x-default" href="https://site.com/about-us" />

<!-- Pe pagina https://site.com/about-us -->
<link rel="alternate" hreflang="ro" href="https://site.ro/despre-noi" />
<link rel="alternate" hreflang="en" href="https://site.com/about-us" />
<link rel="alternate" hreflang="x-default" href="https://site.com/about-us" />

Am văzut zeci de implementări de hreflang făcute după ureche și, sincer, e una dintre cele mai ușoare căi să-ți canibalizezi traficul în Google. Săptămâna trecută m-am lovit din nou de problema asta la un proiect cu peste 15.000 de pagini indexate, unde versiunea .com (în engleză) apărea în căutările din România în locul celei .ro.

E genul de bug silențios care nu dă erori în consolă, dar îți mănâncă din conversii pentru că userii români ajung pe o pagină în engleză cu prețuri în dolari.

Regula de aur pe care o uită toată lumea: reciprocitatea

Conceptul e simplu: îi spui lui Google ce pagină să arate în funcție de limba și locația userului. În realitate, dacă uiți să pui link-ul de retur (reciprocitatea), Google ignoră complet tot marcajul.

Am pățit asta la un proiect vechi. Am pus hreflang pe .ro către .com, dar pe .com am uitat să punem link înapoi către .ro. Google a considerat că încercăm să manipulăm rezultatele și a ignorat tagurile. Fiecare pagină din ambele site-uri trebuie să conțină referințe către ea însăși și către toate celelalte versiuni alternative.

Trade-off: HTML head versus XML Sitemap

Ai două opțiuni mari pentru implementare: le pui în tag-ul <head> al fiecărei pagini sau le pui direct în sitemap-ul XML.

Dacă mergi pe varianta în HTML (cea mai comună), codul e ușor de citit și debuguit direct în browser cu Inspect Element. Totuși, există un trade-off major. La un site cu 10 limbi, adăugarea a 10 taguri în head pe fiecare pagină mărește dimensiunea HTML-ului. Am economisit în jur de 15% la TTFB (Time to First Byte) pe un proiect mare doar prin mutarea acestor mapări din HTML în sitemap-ul XML.

Pentru un setup simplu cu .ro și .com, injectarea în HTML este complet OK și mult mai rapid de implementat din backend.

Nu uita de x-default

Tag-ul x-default este plasa ta de siguranță. El îi spune motorului de căutare unde să trimită un utilizator care nu se potrivește cu niciuna dintre limbile specificate (de exemplu, un user din Germania care caută pe site-ul tău). De obicei, pentru un site regional și unul global, versiunea .com devine x-default.

Cum verifici dacă ai făcut treabă bună

Nu te baza doar pe faptul că „arată bine în cod”. Google Search Console îți va arăta erori de hreflang, dar durează adesea săptămâni până când crawlează din nou paginile și actualizează rapoartele. Avem nevoie de feedback instant.

Eu folosesc Screaming Frog pentru asta. Are o secțiune dedicată unde îți arată exact dacă ai erori de reciprocitate, taguri lipsă sau coduri de limbă invalide (cum ar si scrierea greșită en-UK în loc de en-GB).

Dacă nu ai o licență de Screaming Frog, poți folosi un tool gratuit online precum Merkle SEO sau poți scrie un script rapid în Python cu BeautifulSoup ca să verifici prin eșantionare vreo 50-100 de URL-uri corelate.

Voi cum gestionați hreflang-ul pe proiectele mari, preferați sitemap-ul XML sau injectarea direct în head?

Răspunsuri 0

Se încarcă răspunsurile…

Loghează-te pentru a răspunde

Doar membrii comunității pot lăsa comentarii.