Jordy Jordy - 7 months ago 47
PHP Question

SEO meta for multi language website

I'm currently working on a multilanguage website and I need it to be SEO optimalized. I support the dutch, english and american-english language/location. I have a couple of questions about the optimalization.

Structure



This is my site structure:



Note:



Questions




  1. I searched the internet for the best way to let Google know of the different languages. Google talks about the 'hreflang' meta: "When multiple language versions of an URL are used, every single language page must identify all language versions including itself." But I can't find that tag in the source code of any big website (Google, Apple, Facebook, Microsoft and almost every other multi-language site). Why not? How do they handle it?

  2. When I search in the Dutch Google for, let's say, the Microsoft site, the first result I see is: http://www.microsoft.com/nl-nl/ (note the /nl-nl/ at the end of the url). When I enter the site and select the us-location in the footer of the site it redirects me to http://www.microsoft.com/en-us/. Ok, that's logical. But... When I search in the US Google for the Microsoft site I don't see http://www.microsoft.com/en-us/ but I only see http://www.microsoft.com, without the /en-us/. Why? I don't understand. Because even when you're in the US, the http://www.microsoft.com website redirects you directly to http://www.microsoft.com/en-us/! So why and how did they remove the language parameter from the URL? Also: this is not the Microsoft site only (see http://www.hp.com)

  3. And now a bit of a summary: what exactly should I do for making my website multi-language SEO-proof? I already redirect every user to the /en/, /us/ or /nl/ site. I also put in every page the language in the
    <html>
    tag (like
    <html lang="en-US">
    ). So what should I do more? Set the HTTP header? Use the hreflang-metatag?

  4. To which one should I set the default
    <link rel=”alternate” href=”http://www.example.com/” hreflang=”x-default” />
    ? I mean, the .com/ doesn't exist, I only have the domain with language parameter. I see a lot of websites that have the .com/ as default, but when I enter it, it always redirects me to the /nl/ or /en/.



Hope someone can help me out!

Answer

You already separate your page content for different languages using different language URLs. This is recommended because you are not having multiple versions of the same URL, but with different content (if you were to use only sessions for example, and would show the same page in different languages).

I add hreflangs to my multilingual site, as per Google recommendation. I suggest you do the same.

From Google docs https://support.google.com/webmasters/answer/189077?hl=en :

If you have multiple language versions of a URL, each language page must identify all language versions, including itself.

So on every page, you specify hreflangs for all versions of that page in your different languages.

Let me give you an example from my web application, that supports 2 languages ru and tk. For ru I do not specify lang in the URL, for tk language, /tm/ is added to URL. If you go to https://www.tmawto.com/cars you will see the following meta:

<link rel="alternate" hreflang="ru" href="https://www.tmawto.com/" />
<link rel="alternate" hreflang="tk" href="https://www.tmawto.com/tm/" />

It goes the same for all pages. For each page you specify hreflang version in all other languages. No need for additional HTTP header.