Plusieurs lecteurs nous ont demandé quelle était
l'importance de la balise "DOCTYPE" dans le
cadre d'un référencement. Cette balise
est le plus souvent présente au début
du code HTML des pages (avant l'en-tête HEAD)
sous une forme telle que celles-ci :
<!DOCTYPE html PUBLIC "-//W3C//DTD
XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
Selon Wikipedia (http://fr.wikipedia.org/wiki/Doctype,
article plus complet en anglais : http://en.wikipedia.org/wiki/Document_Type_Declaration),
la Document Type Definition (DTD), ou Définition
de Type de Document, ou Doctype, est un document permettant
de décrire un modèle de document SGML
ou XML. Le document doit notamment respecter les normes
de validation d'une des trois DTD XHTML : strict, transitional
ou frameset.
En d'autres termes, la zone "DOCTYPE" dans
une page web va indiquer dans quelle version du langage
HTML ou XHTML la page a été écrite
et indiquer la DTD (soit l'url du document officiel
qui décrit cette norme et ses spécifications).
Sa structure globale est la suivante :
<!DOCTYPE HTML PUBLIC "type_de_HTML"
"adresse_du_DTD">
L'indication "//EN" n'indique pas, contrairement
à ce que certaines personnes pensent parfois,
la langue dans laquelle la page web qui contient cette
balise est écrite, mais la langue dans laquelle
la DTD est proposée, donc le plus souvent l'anglais
("EN"). Son incidence est donc nulle en termes
de référencement.
La langue utilisée dans le document pourra, en
revanche, être avantageusement indiquée
au travers de la balise meta :
<meta http-equiv="Content-Language"
content="fr" />
<meta http-equiv="Content-Language" content="en"
/>
<meta http-equiv="Content-Language" content="fr,en"
/>
(cette dernière si plusieurs langues sont présentes
dans la page)
et/ou dans la ligne :
<html lang="fr">
ou en XHTML :
<html lang="fr" xml:lang="fr">
Si une section quelconque du contenu a une langue différente,
il suffit de l'indiquer dans les attributs lang et xml:lang
de son élément conteneur. Par exemple,
pour une citation en anglais dans un document en français
:
- En HTML (type de contenu text/html) :
<q lang="en">...</q>
- En XHTML traité en tant que HTML (type de contenu
text/html) :
<q lang="en" xml:lang="en">...</q>
On comprendra assez rapidement, à la lecture
de ce descriptif, que le contenu de la déclaration
DOCTYPE a assez peu à voir avec le monde du référencement
proprement dit. Aucune des informations contenues dans
cette balise n'influera réellement sur votre
positionnement dans les pages de résultats des
moteurs.
Il conviendra cependant de faire en sorte que les informations
qu'elle contient soient cohérentes avec la façon
dont est codée la page au niveau (X)HTML. Si
c'est le cas, cela ne devrait pas poser de problèmes
aux moteurs. Dans le cas contraire, tout comme la validité
d'un code HTML (par rapport au standard W3C) peut avoir
une importance pour Google et ses acolytes, la non-conformité
de votre code en regard des standards annoncés
dans l'en-tête pourrait causer souci.
Evitez donc de recopier "bêtement" une
balise DOCTYPE depuis un autre site web si vous n'êtes
pas sûr de ce qu'elle signifie et de la façon
dont vos pages sont codées...