BUG when "remove url language code" is on
Posted: Sat May 04, 2013 8:44 pm
Hi... First of all, English it's not my native language. Patience please
I know that this may be a known issue. But after looking and searching (a lot of) info around the web and forums I can't get my language configuration right.
And here I post the configuration of Joomla and languages:
Joomla n server config:
Apache
PHP 5.3.6
Joomla 3.1.1
Protostar Template (same template for all languages)
K2 2.6.6
SEF ON (native)
My host provider is an elite company with dedicated servers especialized in joomla, so at least it isn't a host problem.
I attached imgs of my language status and filter configuration.
---------------------- THE PROBLEM ------------------------
I have my site in 4 languages: English, Spanish, Portuguese and Korean. The site default language is spanish (cause most of us speak es, and we have the most complete version of the site in that language).
In the past I used SH404SEF to make friendly urls for my K2 component. But since K2 have a new built-in seo urls plugin, I stop using SH404SEF (I always pridge to avoid the unnecessary use of extensions, if you can do it natively).
And since Joomla release the new multilanguage feature, I said goodbye to JoomFish BTW I think that the multilanguage power is the STRONGEST spot of Joomla , something that either WP can fight.
Something that SH404SEF did is remove the url default language code from all my spanish (default language). That wasn't a choice, that is the way the component work dunno why. So "www.mysite.com/es/hello.html" become "www.mysite.com/hello.html", and the others languages stay as the same, with their owns language tags in url "en", "pt" and "ko".
When I change to Joomla 3, I used the language filter natively. And GREAT! there was an option to turn off the default language code, so I kept my urls articles the same.
Everything OK. BUT, lately I figured out that this option is messing things out.
For example. My PC is in spanish... for me there are no problem to enter in any version of my site in any language.
But in any PC where the default language is different from spanish, the site wont display spanish information... NEVER. I mean NEVER in any part of the site. And this have nothing to do with item associations.
---------------------- THE EXAMPLE ------------------------
I mean. For example, my cousin have his PC in portuguese. And he can access my site in Portuguese (defualt language when he enter):
"www.mysite.com/pt"
He can access to English and also Korean site too...
"www.mysite.com/en" or "www.mysite.com/ko"
But when he try to access in spanish (the real default language). There start the problems...
There are different kind of errors, but I think that everything come from the same point: a bug in languagefilter or a incorrect form of manage language redirection in joomla core.
For example:
If for some reason the menu alias is the same in portuguese and spanish, the the url change correctly but the content (the article, categories and modules, etc) remains in portuguese...
"www.mysite.com/pt/city.html" (PT URL) --> (click es in language switcher) --> "www.mysite.com/city.html" (ES URL)
"www.mysite.com/pt" (PT URL) --> (click es in language switcher) --> "www.mysite.com" (ES URL)
In the cases above, city is the same alias in spanish and portuguese, and the homepages have the same alias. but even the url change, all the rest stay in portuguese. There are not 404 page in these cases.
But in all the others cases where the alias are different, there redirect to an 404 error... most of cases. Example:
"www.mysite.com/pt/atracoes.html" (PT URL) --> (click es in language switcher) --> "www.mysite.com/atracciones.html" (ES URL) but with a nice 404 error page.
The same occurs in other languages. For example:
"www.mysite.com/en/attractions.html" (EN URL) --> (click es in language switcher) --> "www.mysite.com/atracciones.html" (ES URL) but with a nice 404 error page, AND THE CONTENT OF THE 404 PAGE IN PORTUGUESE, the default language of my cousin PC.
---------------------- THE SOLUTION (?) ------------------------
When I turn off the option of remove url language code, everything appear to works fine.
But if I do this, I'm not only going to have to wait to Google crawl all my new urls again (and I'm talking about hundred of pages), also I'm going to lost hundred of Social likes and comments (Fb, Twitter, G+ and others) in spanish. Obviusly I work very hard to got that user interactions and I really don't want to lose that.
I really don't know if this is the best way to solve this. Anyway, the option "remove url language code" may cause problems with others users that are dealing with multilanguage sites.
I found a forum post of someone that describe the same issue: http://forum.joomla.org/viewtopic.php?f=711&t=793150
But, I have the impression that he still couldn't find the solution.
I rly wait a lot of months before posting this, but I don't know what to do now... Please, give me a hand.
Thanks for reading!
---------------------- UPDATES ------------------------
■ J2.5 doesn't seems to reproduce this problem, since the http://multilingual-joomla-demo.cloudaccess.net, is 2.5. And I can access to all languages (also the default english).
I know that this may be a known issue. But after looking and searching (a lot of) info around the web and forums I can't get my language configuration right.
And here I post the configuration of Joomla and languages:
Joomla n server config:
Apache
PHP 5.3.6
Joomla 3.1.1
Protostar Template (same template for all languages)
K2 2.6.6
SEF ON (native)
My host provider is an elite company with dedicated servers especialized in joomla, so at least it isn't a host problem.
I attached imgs of my language status and filter configuration.
---------------------- THE PROBLEM ------------------------
I have my site in 4 languages: English, Spanish, Portuguese and Korean. The site default language is spanish (cause most of us speak es, and we have the most complete version of the site in that language).
In the past I used SH404SEF to make friendly urls for my K2 component. But since K2 have a new built-in seo urls plugin, I stop using SH404SEF (I always pridge to avoid the unnecessary use of extensions, if you can do it natively).
And since Joomla release the new multilanguage feature, I said goodbye to JoomFish BTW I think that the multilanguage power is the STRONGEST spot of Joomla , something that either WP can fight.
Something that SH404SEF did is remove the url default language code from all my spanish (default language). That wasn't a choice, that is the way the component work dunno why. So "www.mysite.com/es/hello.html" become "www.mysite.com/hello.html", and the others languages stay as the same, with their owns language tags in url "en", "pt" and "ko".
When I change to Joomla 3, I used the language filter natively. And GREAT! there was an option to turn off the default language code, so I kept my urls articles the same.
Everything OK. BUT, lately I figured out that this option is messing things out.
For example. My PC is in spanish... for me there are no problem to enter in any version of my site in any language.
But in any PC where the default language is different from spanish, the site wont display spanish information... NEVER. I mean NEVER in any part of the site. And this have nothing to do with item associations.
---------------------- THE EXAMPLE ------------------------
I mean. For example, my cousin have his PC in portuguese. And he can access my site in Portuguese (defualt language when he enter):
"www.mysite.com/pt"
He can access to English and also Korean site too...
"www.mysite.com/en" or "www.mysite.com/ko"
But when he try to access in spanish (the real default language). There start the problems...
There are different kind of errors, but I think that everything come from the same point: a bug in languagefilter or a incorrect form of manage language redirection in joomla core.
For example:
If for some reason the menu alias is the same in portuguese and spanish, the the url change correctly but the content (the article, categories and modules, etc) remains in portuguese...
"www.mysite.com/pt/city.html" (PT URL) --> (click es in language switcher) --> "www.mysite.com/city.html" (ES URL)
"www.mysite.com/pt" (PT URL) --> (click es in language switcher) --> "www.mysite.com" (ES URL)
In the cases above, city is the same alias in spanish and portuguese, and the homepages have the same alias. but even the url change, all the rest stay in portuguese. There are not 404 page in these cases.
But in all the others cases where the alias are different, there redirect to an 404 error... most of cases. Example:
"www.mysite.com/pt/atracoes.html" (PT URL) --> (click es in language switcher) --> "www.mysite.com/atracciones.html" (ES URL) but with a nice 404 error page.
The same occurs in other languages. For example:
"www.mysite.com/en/attractions.html" (EN URL) --> (click es in language switcher) --> "www.mysite.com/atracciones.html" (ES URL) but with a nice 404 error page, AND THE CONTENT OF THE 404 PAGE IN PORTUGUESE, the default language of my cousin PC.
---------------------- THE SOLUTION (?) ------------------------
When I turn off the option of remove url language code, everything appear to works fine.
But if I do this, I'm not only going to have to wait to Google crawl all my new urls again (and I'm talking about hundred of pages), also I'm going to lost hundred of Social likes and comments (Fb, Twitter, G+ and others) in spanish. Obviusly I work very hard to got that user interactions and I really don't want to lose that.
I really don't know if this is the best way to solve this. Anyway, the option "remove url language code" may cause problems with others users that are dealing with multilanguage sites.
I found a forum post of someone that describe the same issue: http://forum.joomla.org/viewtopic.php?f=711&t=793150
But, I have the impression that he still couldn't find the solution.
I rly wait a lot of months before posting this, but I don't know what to do now... Please, give me a hand.
Thanks for reading!
---------------------- UPDATES ------------------------
■ J2.5 doesn't seems to reproduce this problem, since the http://multilingual-joomla-demo.cloudaccess.net, is 2.5. And I can access to all languages (also the default english).