web-dev-qa-db-fra.com

L'attribut href d'un élément <link /> peut-il être relatif?

Puis-je utiliser:

<link rel="alternate" hreflang="en" href="?l=en" />

lier des pages avec différentes langues pour le référencement (recommandé pour exemple de Google )? Cette URL peut-elle être relative comme dans l'exemple ci-dessus ou doit-elle être pleine (commencez par http://example.com)?

6
PetaspeedBeaver

Ça y ressemble. Cet exemple provient des spécifications HTML5 :

Par exemple, le lien suivant est une traduction française qui utilise le format PDF:

<link rel=alternate type=application/pdf hreflang=fr href=manual-fr>

8
RolfRB

Si possible, utilisez toujours des liens absolus au lieu de liens relatifs.

Pourquoi?

Parce que les liens relatifs peuvent provoquer des erreurs d'analyse. Surtout quand il s'agit de liens alternatifs, vous devez vous assurer que le bot trouve exactement l'URL que vous voulez qu'il explore.

De plus, l'utilisation de paramètres pour l'indication de la langue n'est pas une bonne idée.

Consultez les guides suivants sur les sites Web multilingues: https://support.google.com/webmasters/answer/182192?hl=fr

Et implémentation de hreflang: https://support.google.com/webmasters/answer/189077?hl=fr

1
Seb

Oui.

La définition de attribut href pour l'élément link dit:

[…] Doit contenir un RL valide non vide potentiellement entourée d'espaces

Cela renvoie à la définition de RL non vide valide , qui renvoie à la définition de RL valide , qui indique qu'il doit s'agir d'une URL qui

se conforme aux exigences de conformité de création de la norme d'URL

Cette norme d'URL est http://www.w3.org/TR/url/ (qui n'est en réalité qu'un brouillon de travail datant de 2014), ce qui, bien sûr, définit/permet RL relatives .

Ou en d'autres termes ( tl; dr ): l'attribut href est le même pour a, area et link.

1
unor