I have a problem that I cannot fix for the moment. We use on our website both WP Super Cache and qTranslate because our website has several languages.
If I enable WP Super cache on the home page, the auto detection of the language and the set of the language in a cookie using qTranslate doesn't work anymore. The problem is that if I disable WP Super Cache on the home page to make it work, then the page is much much slower. The best I could reach was a full load in 2 sec where without the cache I am between 6 and 10 seconds.
I have read about the use of Late Init and mfunc but if I enable the Late Init the speed isn't as good as expected.
Would it be possible to exclude the root index from the cache but not the pages generated from ? (/index.php would be excluded but not /fr/index.php and /nl/index.php that qTranslate generates from the /index.php)
So far my different options are :
1) Use of a URL rewrite plugin (I'm using IIS).
Based on the browser language I can redirect the user on a specific page.
This solution is good but the language is not saved in a cookie. The problem for us is that if a user connects with a browser reporting En as language, he'll arrive on the Nl version of the website. If at that moment he specifies he wants to browse in Fr, then the next time he comes back on the root, he'll be send again on the Nl translation.
2) Use of Late init
With this option enabled, the access to all pages is much slower. It's not really a solution.
This solution is my last as it would require to make new developments for the website. Not yet done.
Do you have a similar experience and have a different solution to share ?