Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is <html lang="de-DE"> equal to <meta http-equiv="language" content="DE">?

Tags:

html

meta

seo

lang

I've a project were I can only add code beneath the <html>-tag but it's important that the language is in the header for SEO and some other stuff.

So my question is:

What is the priority/ranking of

<html lang="de-DE"> 

vs

<meta http-equiv="language" content="DE">
like image 657
DrSheldonTrooper Avatar asked Feb 23 '16 11:02

DrSheldonTrooper


2 Answers

According to Google Multi-regional guidelines:

Google uses only the visible content of your page to determine its language. We don’t use any code-level language information such as lang attributes.

so from an SEO point of view it shouldn't matter. It's actually more important to put the language in the URL:

Google uses the content of the page to determine its language, but the URL itself provides human users with useful clues about the page’s content. For example, the following .ca URLs use fr as a subdomain or subdirectory to clearly indicate French content: http://example.ca/fr/vélo-de-montagne.html and http://fr.example.ca/vélo-de-montagne.html.

Given that the meta tag is obsolete (see Rahul Tripathi's answer) and you can't add the html 5 equivalent. I simply wouldn't bother.


If your site is multilingual then you should consider implementing hreflang tags to redirect users of the languages you wish to target to the correct language page.

See google docs here

like image 174
Liam Avatar answered Sep 18 '22 13:09

Liam


From HTML5 the meta http-equiv="Language" is obsolete. You should better use the <html lang="de-DE"> attribute.

Refer this:For HTML, should we put language declarations in HTTP headers and meta elements, and how are they different from those in language attributes?:

The HTTP Content-Language header can be used to provide metadata about the intended audience of the page, and can indicate that this is more than one language. The Content-Language value for an http-equiv attribute on a meta element should no longer be used. You should use a language attribute on the html tag to declare the default language of the actual text in the page.

The specification about Content-Language tells that:

The Content-Language entity-header field describes the natural language(s) of the intended audience for the enclosed entity. Note that this might not be equivalent to all the languages used within the entity-body.

like image 24
Rahul Tripathi Avatar answered Sep 18 '22 13:09

Rahul Tripathi