En aquesta entrada tractarem d'ajudar-te a comprendre millor la etiqueta hreflang ia millorar la teva web quan estigui publicada en diferents idiomes. És important tenir en compte que no serveixen les traduccions al vol mitjançant l'ús de plugins o api de Google Translate. Tot el contingut deu existir traduït ia ser possible, per un expert en cada idioma.
Continguts
Què és i perquè serveix l'etiqueta hreflang?
L'etiqueta hreflang és un atribut HTML molt útil a les nostres webs quan treballem el contingut en diversos idiomes. Emprant aquesta etiqueta estem ajudant els robots de rastreig a localitzar la versió adequada de la nostra web segons idioma o regió.
L'etiqueta hreflang indica als motors de cerca si una web es mostra en diferents idiomes, la localització de la web i en quines versions se serveix el contingut. L'ús d'aquesta etiqueta és recomanable tant per a la traducció a diversos idiomes com a variacions d'idioma, com per exemple, espanyol a sud-amèrica. Aplicant aquesta etiqueta ajudem Google a conèixer millor en quin idioma s'ofereix la nostra web per així mostrar-la als usuaris segons la seva procedència. Si disposem de diverses versions de la mateixa pàgina, amb aquesta etiqueta hreflang estem indicant a Google quina de totes les versions volem mostrar a lusuari.
Si disposem d'una web o ecommerce multidioma aquesta etiqueta és molt convenient per millorar el posicionament dels nostres continguts a diferents parts del món.
Emprant aquesta etiqueta podrem atraure noves audiències a la nostra web.
- Usuaris del mateix país que parlen diferents idiomes
- Usuaris de diferents països que parlen altres idiomes
- Usuaris de diferents països que parlen el mateix idioma
Com fer servir l'etiqueta hreflang?
Només cal incloure a la secció head de la nostra web el link següent amb el codi d'idioma adequat. Hem de col·locar cadascuna d'aquestes etiquetes en el corresponent idioma, tantes com idiomes ofereixi la nostra web. Avui dia, hi ha molts plugins per a la traducció de webs que en les seves versions de pagament ofereixen aquesta funció de forma automàtica.
El format adequat per a la implementació de l'etiqueta hreflang ha de ser el següent:
<link rel=”alternate” hreflang=”ca-ES” href=”https://www.tudominio.com/“/>
- link rel=“alternate”: L'enllaç que apareix a aquesta etiqueta és una versió alternativa d'aquesta pàgina.
- hreflang=“x”: És alternativa perquè està en un altre idioma i aquest idioma és x.
- href=“https://midominio.com/pagina-alternativa”: La pàgina alternativa està en aquesta adreça.
Hreflang dóna informació important als motors de cerca sobre el teu contingut, ja que indica codis d'idioma i codis de país per a cada contingut. Aquest codi diu als motors de cerca a quin idioma i regió s'adreça el contingut. És important tenir en compte que el valor de l'atribut ha de contenir tant l'idioma com el país “ES-ÉS”.
Hi ha generadors de tags com https://www.aleydasolis.com/english/international-seo-tools/hreflang-tags-generator/
Relació entre etiquetes hreflang
La relació entre etiquetes hreflang vol dir que ha de fer referència a si mateixa ia la resta de versions. Quan parlem de relació bidireccional cada etiqueta ha d'estar aparellada amb una etiqueta al contingut alternatiu.
Per exemple, si la pàgina ES es connecta a la pàgina EN, llavors la pàgina EN s'ha de connectar de nou a la pàgina ES.
Codis d'idiomes i regions
El valor de l'atribut hreflang indica l'idioma (en format ISO-639 1) i, de vegades, la regió (en format ISO 3166-1 Alpha 2) d'una URL alternativa. Si només s'indica un codi, Google ho considera un codi d'idioma. No cal que l'idioma estigui relacionat amb la regió. Per EXEMPLE:
de: contingut en alemany, independentment de la regió
en-GB: contingut en anglès dirigit a usuaris britànics
de-ES: contingut en alemany per a usuaris que estiguin a Espanya
VEURE TOTS ELS CODIS AL FINAL DEL POST
etiqueta x-default
per mostrar una versió concreta als usuaris d'idiomes no indicats
La variant X-default crea una versió per defecte d'una pàgina que no s'adreça a un idioma específic on es demana als usuaris que seleccionin idioma. Això és molt útil per a usuaris que no tingueu un idioma predeterminat a la configuració del vostre navegador
Per exemple, si servim la nostra web en idioma ES i EN i accedeix un usuari des de la Xina, per defecte podem indicar que la web se serveixi a Anglès.
En un valor opcional, però es recomana incloure'l per controlar quina versió es mostra als usuaris d'idiomes que no heu especificat. No cal especificar un codi d'idioma al valor x-default.
Exemple.
REGNE UNIT
USA
AUSTRÀLIA
PER DEFECTE / resta d'usuaris
Quina funció té l'etiqueta hreflang a SEO?
La funció principal d'aquesta etiqueta és la de millorar la usabilitat de la web ja que facilitem als usuaris la localització del nostre contingut en el vostre idioma o localització. Això ens pot ajudar al posicionament ja que si una web en un idioma té un bon posicionament pot repercutir en altres variacions d'idioma.
Com ens ajuda l'etiqueta hreflang al SEO internacional?
En primer lloc, l'ús d'aquesta etiqueta ens ajuda a millorar el posicionament SEO internacional ja definim la versió correcta per a cada idioma i així ho detecten els rastrejadors com el robot de Google. D'aquesta manera ajudem els cercadors a indexar les paraules clau en l'idioma correcte.
La implementació de l'etiqueta de hreflang ajuda a evitar el contingut duplicat atès que estem indicant les diferents versions del nostre lloc web.
Quan fer servir l'etiqueta hreflang?
De vegades Google pot detectar les versions en diferents idiomes d'una web, però interessa indicar-ho. google ens Recomana indicar versions localitzades a Google Search Console en els següents casos:
- Quan el contingut està únicament en un idioma però hi ha variacions regionals amb continguts molt semblants. Per exemple, pàgines amb contingut en espanyol dirigit a Mèxic, Espanya o Colòmbia.
- Quan el contingut de la Web està en un idioma i es fa una traducció de la plantilla, del menú de navegació i footer web. Aquesta situació sol donar-se en pàgines amb contingut generat per usuaris, com ara els fòrums.
- El contingut està completament traduït a diversos idiomes. Per exemple, pàgines amb una versió en anglès i una altra en espanyol.
- Quan la nostra pàgina d'inici està creada per a tots els usuaris a excepció dels visitants amb un idioma específic. En aquest cas, la pàgina web està traduïda parcialment i només proporciona contingut a certs usuaris específics en alguns idiomes o regions. La resta dusuaris seran dirigits a la home page per defecte.
Mètodes per indicar pàgines alternatives
Pots indicar-nos que una pàgina té versions en altres idiomes o adreçades a regions determinades de tres maneres diferents:
HTML
Encapçalats HTTP
Link: ; rel="alternate"; hreflang=»lang_code_1″, ; rel="alternate"; hreflang=»lang_code_1″, …
Sitemap
Especifica l'espai de noms xhtml d'aquesta manera:
xmlns:xhtml=»http://www.w3.org/1999/xhtml»
Crea un element diferent per a cada URL.
Cada element ha d'incloure un element secundari que indiqui la URL de la pàgina.
Cada element ha de tenir un element secundari amb totes les variants de la pàgina, inclosa la del propi element. L'ordre d'aquests elements secundaris no és important, però et recomanem que facis servir sempre el mateix perquè et resulti més fàcil comprovar si hi ha errors.
Exemple.
<urlset xmlns=»http://www.sitemaps.org/schemas/sitemap/0.9″
xmlns:xhtml=»http://www.w3.org/1999/xhtml»>
https://www.example.com/english/page.html
<xhtml:link
rel=»alternate»
hreflang=»de»
href=»https://www.example.com/deutsch/page.html»/>
<xhtml:link
rel=»alternate»
hreflang=»de-ch»
href=»https://www.example.com/schweiz-deutsch/page.html»/>
<xhtml:link
rel=»alternate»
hreflang=»a»
href=»https://www.example.com/english/page.html»/>
Errors habituals amb l'etiqueta hreflang
Manquen enllaços recíprocs: si en una pàgina X s'inclou un enllaç a una pàgina Y, en aquesta pàgina Y hi ha d'haver un enllaç a la pàgina X. Si no es compleix aquesta condició a totes les pàgines que usen anotacions hreflang és possible que aquestes anotacions s'ignorin o no s'interpretin correctament. Per exemple, si a https://de.example.com/index.html s'inclou aquest enllaç:
També s'ha d'incloure un enllaç hreflang a https://en-gb.example.com/index.html que torni a la versió del contingut:
Codis d'idioma incorrectes: assegura't que els codis d'idioma que utilitzes identifiquin l'idioma en format ISO 639-1 i, opcionalment, la regió en format ISO 3166-1 Alpha 2 de les URL alternatives. No es pot especificar només la regió.
Test hreflang
Pots fer servir aquesta eina per verificar la implementació correcta d'aquesta etiqueta.
Llista de codis d'idiomes
Llenguatge | Hreflang Code |
abkhàs | ab |
africaans | af |
aragonès | an |
àrab | ar |
Assamès | as |
Azerbaidjan | az |
bielorús | be |
búlgar | bg |
bengalí | bn |
Tibetà | bo |
Breton | br |
bosnià | bs |
Català / Valencià | ca |
Txetxènia | ce |
cors | co |
txec | cs |
Church Slavic | cu |
gal·lès | cy |
danès | da |
Alemany | de |
grec | el |
English | en |
esperanto | eo |
Spanish / Castilian | es |
Estònia | et |
basc | eu |
persa | fa |
finlandès | fi |
Fijià | fj |
Feroès | fo |
francès | fr |
Western Frisian | fy |
irlandès | ga |
Gaelic / Scottish Gaelic | gd |
gallec | gl |
Manx | gv |
hebreu | he |
hindi | hi |
croat | hr |
Haitian; Haitian Creole | ht |
hongarès | hu |
armeni | hy |
indonesi | id |
islandès | is |
Italià | it |
japonès | ja |
javanès | jv |
georgià | ka |
Kongo | kg |
coreà | ko |
Kurd | ku |
Cornish | kw |
Kirguís | ky |
llatí | la |
Luxembourgish; Letzeburgesch | lb |
Limburg; Limburger; Limburgish | li |
Lingala | ln |
lituà | lt |
letó | lv |
madagascar | mg |
macedoni | mk |
mongol | mn |
Moldava | mo |
malai | ms |
maltès | mt |
Birmà | my |
Norwegian (Bokmål) | nb |
nepalès | ne |
Holandès | nl |
Norwegian (Nynorsk) | nn |
noruec | no |
Occiten (post 1500); Provençal | oc |
polonès | pl |
portuguès | pt |
Raeto-Romanç | rm |
romanès | ro |
rus | ru |
sard | sc |
Northern Sami | se |
eslovac | sk |
eslovè | sl |
somali | so |
albanès | sq |
serbi | sr |
suec | sv |
swahili | sw |
Turkmen | tk |
turc | tr |
Tahití | ty |
ucraïnès | uk |
urdu | ur |
uzbek | uz |
vietnamita | vi |
Volapük | vo |
jiddisch | yi |
Chinese (simplified) | zh-hans |
tailandès | th |
Llista de codis de països
País | Hreflang Code |
Afganistan | AF |
Aland Islands | AX |
Albània | AL |
Algèria | DZ |
American Samoa | AS |
Andorra | AD |
Angola | AO |
Anguilla | AI |
Antàrtida | AQ |
Antiga and Barbuda | AG |
Argentina | AR |
Armènia | AM |
Aruba | AW |
Austràlia | AU |
Àustria | AT |
Azerbaidjan | AZ |
Bahames | BS |
bahrein | BH |
Bangla Desh | BD |
Barbados | BB |
Bielorússia | BY |
Bèlgica | BE |
belize | BZ |
Benín | BJ |
bermudes | BM |
Bhutan | BT |
Bolívia, Plurinational State of | BO |
Bonaire, Sint Eustatius and Saba | BQ |
Bòsnia and Hercegovina | BA |
Botswana | BW |
Bouvet Island | BV |
Brasil | BR |
British Indian Ocean Territory | IO |
Brunei Darussalam | BN |
Bulgària | BG |
Burkina Faso | BF |
Burundi | BI |
Cambodja | KH |
Camerun | CM |
Canadà | CA |
Cap Verd | CV |
Cayman Islands | KY |
Central African Republic | CF |
Txad | TD |
Xile | CL |
Xina | CN |
Christmas Island | CX |
Cocos (Keeling) Islands | CC |
Colòmbia | CO |
Comores | KM |
Congo | CG |
Congo, the Democratic Republic of the | CD |
Cook Islands | CK |
Costa Rica | CR |
Côte d'Ivoire | CI |
Croàcia | HR |
Cuba | CU |
Curaçao | CW |
Xipre | CY |
Czech Republic | CZ |
Dinamarca | DK |
Djibouti | DJ |
dominica | DM |
Dominican Republic | DO |
equador | EC |
Egipte | EG |
El Salvador | SV |
Equatorial Guinea | GQ |
eritrea | ER |
Estònia | EE |
Ethiopia | ET |
Falkland Islands (Malvines) | FK |
Faroe Islands | FO |
Fiji | FJ |
Finlàndia | FI |
França | FR |
French Guiana | GF |
French Polynesia | PF |
French Southern Territories | TF |
Gabon | GA |
Gàmbia | GM |
Geòrgia | GE |
Germany | DE |
Ghana | GH |
Gibraltar | GI |
Grècia | GR |
Greenland | GL |
Granada | GD |
Guadalupe | GP |
Guam | GU |
Guatemala | GT |
Guernsey | GG |
Guinea | GN |
Guinea Bissau | GW |
Guaiana | GY |
Haití | HT |
Heard Island and McDonald Islands | HM |
Holy See (Vatican City State) | VA |
Hondures | HN |
Hong Kong | HK |
Hongria | HU |
Islàndia | IS |
Índia | IN |
Indonèsia | ID |
Iran, Islamic Republic of | IR |
Iraq | IQ |
Irlanda | IE |
Isle of Man | IM |
Israel | IL |
Itàlia | IT |
Jamaica | JM |
Japó | JP |
Jersei | JE |
Jordan | JO |
Kazakhstan | KZ |
Kenya | KE |
Kiribati | KI |
Korea, Democratic People's Republic of | KP |
Korea, Republic of | KR |
Kuwait | KW |
Kyrgyzstan | KG |
Lao People's Democratic Republic | LA |
Letònia | LV |
Líban | LB |
Lesotho | LS |
Libèria | LR |
Líbia | LY |
Liechtenstein | LI |
Lituània | LT |
Luxemburg | LU |
Macau | MO |
Macedònia, the Former Yugoslav Republic of | MK |
madagascar | MG |
Malawi | MW |
Malàisia | MY |
Maldives | MV |
mali | ML |
Malta | MT |
Marshall Islands | MH |
Martinica | MQ |
Mauritània | MR |
Mauritius | MU |
Mayotte | YT |
Mèxic | MX |
Micronèsia, Federated States of | FM |
Moldàvia, República of | MD |
Mònaco | MC |
Mongòlia | MN |
Montenegro | ME |
Montserrat | MS |
Marroc | MA |
Moçambic | MZ |
Myanmar | MM |
Namíbia | NA |
Nauru | NR |
Nepal | NP |
Països Baixos | NL |
New Caledònia | NC |
New Zealand | NZ |
Nicaragua | NI |
Níger | NE |
Nigèria | NG |
Niue | NU |
Norfolk Island | NF |
Northern Mariana Islands | MP |
Noruega | NO |
Oman | OM |
Pakistan | PK |
Palau | PW |
Palestine, State of | PS |
Panamà | PA |
Papua New Guinea | PG |
Paraguai | PY |
Perú | PE |
Filipines | PH |
Pitcairn | PN |
Polònia | PL |
Portugal | PT |
Puerto Rico | PR |
Qatar | QA |
La Reunió | RE |
Romania | RO |
Russian Federation | RU |
Rwanda | RW |
Saint Barthélemy | BL |
Saint Helena, Ascensió i Tristan da Cunha | SH |
Saint Kitts and Nevis | KN |
Saint Lucia | LC |
Saint Martin (French part) | MF |
Saint Pierre and Miquelon | PM |
Saint Vincent and the Grenadines | VC |
samoa | WS |
Sant Marí | SM |
Sao Tome and Principe | ST |
Saudi Aràbia | SA |
Senegal | SN |
Sèrbia | RS |
Seychelles | SC |
Sierra Leone | SL |
Singapur | SG |
Sint Maarten (Dutch part) | SX |
Eslovàquia | SK |
Eslovènia | SI |
Solomon Islands | SB |
Somàlia | SO |
South Africa | ZA |
South Georgia and the South Sandwich Islands | GS |
South Sudan | SS |
Espanya | ES |
Sri Lanka | LK |
Sudan | SD |
Suriname | SR |
Svalbard and Jan Mayen | SJ |
Swaziland | SZ |
Suècia | SE |
Suïssa | CH |
Syrian Arab Republic | SY |
Taiwan, Province of China | TW |
Tajikistan | TJ |
Tanzània, United Republic of | TZ |
Tailàndia | TH |
Timor Oriental | TL |
Togo | TG |
Tokelau | TK |
tonga | TO |
Trinitat and Tobago | TT |
Tunísia | TN |
Turquia | TR |
Turkmenistan | TM |
Turks and Caicos Islands | TC |
Tuvalu | TV |
Uganda | UG |
Ucraïna | UA |
United Arab Emirates | AE |
United Kingdom | GB |
United States | US |
United States Minor Outlying Islands | UM |
Uruguai | UY |
Uzbekistan | UZ |
vanuatu | VU |
Veneçuela, Bolivarian Republic of | VE |
Viet Nam | VN |
Virgin Islands, British | VG |
Virgin Islands, US | VI |
Wallis and Futuna | WF |
Western Sahara | EH |
Iemen | YE |
Zàmbia | ZM |
Zimbabwe | ZW |
fonts
https://developers.google.com/search/docs/advanced/crawling/localized-versions?hl=es