The following sentence is such a bullshit - i must tell you.
Drupal tries to determine the language of a visitor by the language of the browser. In 99% of all cases the browser language is identical to the installation package language.
I'm sure this is maximum 95% and you missed to explain that google, yahoo, ask, msn and so on are english only. using such a detection is error prone and MUST be explained for not kicking sites to search engine dead.
Comments
Comment #1
sunHaving a description is better than having no description at all. Since language detection by browser locale happens only once per session, search engines should index the site in all available languages as long as the language switching block is enabled.
Comment #2
hass commentedBetter then nothing - yes - but it should be much more detailed for giving help to the people. You are wrong regarding SE crawling. It sounds like you have never worked with Search Engines... or SE friendly websites.
An SE comes with one hit, cookies every time disabled, there for there is no session data available. Every hit creates a new session! There for the only solution is - detecting language - based on node language, but the node must have a unique URL for this. If this is not the case, you are lost and you will create duplicate content and so on and so on. Read some older discussions here in the issues. This has already discussed. SE never follows your language switcher block logic... this one have URL param's, another minus point. SE don't like URL param's much and may not follow them. SE's never crawl synchronously through your site. they work asynchronously and maybe one hit comes from crawl IP X and the next from Y and so on. Never followed one link after the other and does not follow your site structure step by step with the same crawler.
Comment #3
Roberto Gerola commentedYesterday I've discussed this problem with a friend.
I think that if you enable "browser language detection" and "switch by node's locale"
could work, because the 2nd option should reste the current language to the language
of the node instead to the browser language.
We have made some tests with links browser disabling session support.
It seems to work, but more tests are necessary.
Comment #4
hass commented"switch by node's locale" must work, yes. But the problem is - will the crawler ever find the node URL... without a sitemap - maybe not. This is partly the frontpage issue we discussed earlier... (~2 months ago) frontpage must have a unique URL... like /de/ or /en/ - if not the frontpage will be displayed as english for the crawler and for the other in the browser dependent language...
unique urls with node language is the only working solution... but the big problem is how should SE ever switch to a different language if it don't like the switcher URL with url params...
Comment #5
Roberto Gerola commentedYes, I am aware of the problem of the /node page.
If we implement a system that automatically transform /node calls
to en/node or de/node, depending on the current language could it work in your opinion ?
If we implement this we could also get rid of the cache patch.
>but the big problem is how should SE ever switch to a different language
>if it don't like the switcher URL with url params
Ok, clear.
So, we could change the behaviour of switch language block to contain
only the url of the translated node. For example :
i am on http://www.example.com/en/node
the link in switching block contains http://www.example.com/fr/node
instead of http://www.example.com/switchuilocale/fr?destination=fr/node
or also :
Page showed : http://www.example.com/products (for English)
link in switching block : http://www.example.com/prodotti (for Italian)
Could this work ?
Thanks for your feedback.
Comment #6
sunThis gets a bit offtopic now. Why should a SE not follow the switchuilocale link? There are many sites in the index that have URLs with query parameters only. If you insist to change it, you can write a small patch that changes those links from www.example.com/switchuilocale/locale?destination=foo/bar to www.example.com/switchuilocale/locale/foo/bar. This is certainly not a big deal, since we know at which argument the destination path begins. Anyway, please open a new issue for that.
You complained about a incomplete description of the browser locale detection. Please feel free to post a patch that changes this description in this issue. I'll be glad to review it.
Comment #7
hass commented@roberto:
Yes, this will be the best solution... not having a special switcher URL is best everytime... i don't like to get a "switcher URL" indexed :-)
Comment #8
hass commented