Recently I sat down with long time friend Mike Casey who has been running a graduate jobs website in Australia for a number of years and is now expanding into international markets. He as after some advice expanding his websites into multiple countries, but the condition that each country would be able to handle multiple languages. Some countries also needed the ability to serve multiple language inside the same website. So what is a guy to do in this situation?
Well we both did some research and found some really interesting links and information on how to run multinational, multilingual websites. We will share our thoughts here for all so others can learn from what we discovered because finding good information was harder than we first thought.
We won’t go into the required technologies and code required to replicate a website across countries, because that is beyond the scope of this post. We assume you have your platform sorted in this case and just want to know about how you need to modify templates and URL structures.
The first thing you need to do is to make sure you have bought all the country specific domain names for your organisation. In a perfect case scenario you would go for a URL that was character for character identical. For example, Mike had made sure he bought www.gradconnection.co.uk and not www.grad-connection.co.uk (the character change is a notable difference in the eyes of search engines).
Even if your new market speaks multiple languages in the same country, your website needs to default to one in particular. This becomes a business decision and should be done on what is best for the users in the region. For example, in Hong Kong, the vast majority of websites default to English and not Cantonese.
In the footer I have referenced links from Google’s Webmaster Blog that state that meta geo-location tags do not help identify a website with a particular country. So don’t waste your time.
This is where things get really tricky, so take notes, there is a lot of work to do here.
One thing that was discovered during our research is that the HTML attribute is fairly important in multilanguage website. So for example:
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
means that this page is being served in the English language.
So when it comes to serving the same website in multiple languages, each and every page needs to have the correct attribute value in place so search engines and search readers know what to do with the words on the page. HTML lang attribute – remember it!.
How do you know what the right value for the attribute is? After searching high and low, we found this link that provides all the language identifies (RFC 3006). Have a search through that page and find the relevant code to serve in the markup of your page.
How you flip the attribute value in your template files is completely up to you, talk to your developers and explain the importance of having it there.
Running your website through Google Translate is not an effective or sensible multilingual strategy. If you do not want your website being tripped as being spam, your only option is to get it hand translated. Period.
On a different Google Webmaster Blog post (referenced in the footer), they even recommend all boilerplate text, template buttons, navigation, etc be translated. Not only will this benefit your users, but it will also add to the authenticity and trust-factor of your web site.
This is simple fix, make sure the following piece of HTML appears in all your templates (note: there is different markup for HTML5 and the previous HTML standards):
<meta charset="UTF-8" />
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
The 2 options available to the development team are:
Once again this becomes a business decision, along with a chat with your developers. Sub domains might cause problems with mobile websites and other network setups. Whatever option you choose to go with, stick to it and implement the required URL routes.
Once a user arrives at your website and makes a conscience decision to switch the language, the best place to store that is in a session for the duration of the visit. If you want to remember that preference, store it in a cookie. Do not do server-side redirects based on IP location, browser settings, etc – Google doesn’t recommend it.
Also interesting fun fact we discovered: GoogleBot does not send any language data in its server request calls. So don’t try to get tricky with that either.
For maximum SEO impact, common sense as well as a couple of blog posts have mentioned that links that are pointing to a specific language page have the most impact when the link in marked up in the same language. So links coming from a Spanish website should have spanish words in the anchor text and point to the Spanish version of the page on the website, not the English version or the homepage.
So after implementing all of the above points, you are well on track to having a fully effective multinational and multilingual website. And if your platform can’t handle any of the above changes, then you might have to reconsider before you go worldwide.
If anyone else has some good recommendations about going international, please leave a note in the comments!