I currently have a website that has issues with its language tags. There are currently two languages used on the website; French and English, along with a Canadian locale, but Google seems to show French pages on an English Google search. For instance, the About Us page shows both in French and in English in English search results, which I don't think is normal.
Looking through Google's pages on multi-regional/multilingual websites has only served to confuse me further.
I want to target my website for the canadian locale, but also show the same website to other french/english users throughout other locales.
Currently, It's working like this;
French page
<html>
<head>
<link rel="alternate" hreflang="en-ca" href="http://example.com/en-ca">
</head>
English page
<html>
<head>
<link rel="alternate" hreflang="fr-ca" href="http://example.com/fr-ca">
</head>
I'm confused about whether or not I should use "x-default" as an alternate in some way, whether I should put the locale and the language in my URIs, as / redirects to /fr-ca, and if I should point "canonical" towards its proper language page.
I know that Google doesn't care about the lang attribute on the html tag, they very clearly state so in this page; https://support.google.com/webmasters/answer/182192?hl=en&ref_topic=2370587#1
I'm assuming this is how I should do it;
French Page
<html lang="fr">
<head>
<link rel="alternate" hreflang="en" href="http://example.com/en">
<link rel="canonical" href="http://example.com">
</head>
English Page
<html lang="en">
<head>
<link rel="alternate" hreflang="fr" href="http://example.com">
<link rel="canonical" href="http://example.com/en">
</head>
What would be the proper way of getting this done?
/en-ca
,/en
,/fr-ca
, and/fr
.