Title: Language Switcher Widget does not switch languages
Last modified: August 22, 2016

---

# Language Switcher Widget does not switch languages

 *  Resolved [retrovert](https://wordpress.org/support/users/retrovert/)
 * (@retrovert)
 * [11 years, 5 months ago](https://wordpress.org/support/topic/language-switcher-widget-does-not-switch-languages/)
 * At the moment my site keeps displaying Russian version, in front-end view, and
   fails to switch into English.
 * The switch is set as a widget in the site header.
 * The back-end (wp-admin) switch seems to work Ok. But, I don’t really know since
   I don’t have my own Russian text on the back-end.
 * In the old “qtranslate” I had the switch working by just echoing “qtrans_generateLanguageSelectCode(‘
   both’) output. Since “qtrans_generateLanguageSelectCode” is not available in “
   qtranslate-x”, I had to modify my code to call the “qtranxf_generateLanguageSelectCodeit”
   instead. To test the change I switched from English to Russian, and ever since
   the site remains in Russian.
 * Removing “qtranxf_generateLanguageSelectCodeit” and replacing it with the widget
   has not helped.
 * I did some experiments with cookies, and seem that the “qtranslate-x” switcher
   somehow captures the present cookie setting and use it, while ignoring at all
   which button is clicked. When I remove ‘qtranslate-x’ cookies in browser, the
   widget switches to the language I want. But, then it seem to get stuck again.
 * This may make sense for visitors who are one-language only: switch once, and 
   never worry after this.
 * However, much of content on the site is meant to serve 2-language visitors, and
   for them this behavior is a nuisance.
 * Can we have an option for a default behavior?
 * Please, advise.
    [http://asechka.com](http://asechka.com)
 * [https://wordpress.org/plugins/qtranslate-x/](https://wordpress.org/plugins/qtranslate-x/)

Viewing 9 replies - 1 through 9 (of 9 total)

 *  Plugin Author [John Clause](https://wordpress.org/support/users/johnclause/)
 * (@johnclause)
 * [11 years, 5 months ago](https://wordpress.org/support/topic/language-switcher-widget-does-not-switch-languages/#post-5646783)
 * Is this still a problem in the latests version?
 *  [xseon](https://wordpress.org/support/users/xseon/)
 * (@xseon)
 * [11 years, 5 months ago](https://wordpress.org/support/topic/language-switcher-widget-does-not-switch-languages/#post-5646804)
 * Do you have any English content, i.e. translated post or page? I’m not sure if
   I noticed that with q-translate or with some other language extension as I tried
   many, but on some point it was like that: if I don’t have any translated content
   the switch is inactive, and as soon as I translate a post or a page, it becomes
   active.
 *  Thread Starter [retrovert](https://wordpress.org/support/users/retrovert/)
 * (@retrovert)
 * [11 years, 5 months ago](https://wordpress.org/support/topic/language-switcher-widget-does-not-switch-languages/#post-5646857)
 * To John:
    Updated to 2.8 on 1/8/2015 11:50 am CT.
 * The warning messages are back:
    ———————————- Warning: call_user_func_array() [
   function.call-user-func-array]: First argument is expected to be a valid callback,‘
   qtrans_convertURL’ was given in /home1/senderf/public_html/wp-includes/plugin.
   php on line 214
 * Warning: Cannot modify header information – headers already sent by (output started
   at /home1/senderf/public_html/wp-includes/plugin.php:214) in /home1/senderf/public_html/
   wp-includes/pluggable.php on line 1179
    —————————
 *  Thread Starter [retrovert](https://wordpress.org/support/users/retrovert/)
 * (@retrovert)
 * [11 years, 5 months ago](https://wordpress.org/support/topic/language-switcher-widget-does-not-switch-languages/#post-5646864)
 * There is a line in the “qtranslate.php” (#521-?) that got commented out in 2.8:
   —————————–
   require_once(dirname(__FILE__).”/qtranslate_compatibility.php”); —————————– I
   put it back in, right after the commented block, just as it was in the previous
   version I had.
 * This took care of the warning messages.
 * The changes you made also made difference for switching – cookies do not seem
   used anymore.
 * However, the switcher still does not work. Just go to my site’s (asechka.com)
   front page and click on “Russian”. Instead of displaying the same page with some
   Russian content it goes to a new URL for one specific post with URL translated
   into russian and pops 404.
 * Hope, not a big deal to fix.
 *  Thread Starter [retrovert](https://wordpress.org/support/users/retrovert/)
 * (@retrovert)
 * [11 years, 5 months ago](https://wordpress.org/support/topic/language-switcher-widget-does-not-switch-languages/#post-5646873)
 * I just noticed some other unexpected behavior:
    (1) My front page has normally
   4 columns – the last one does not display anymore. I will double check on this–
   may have nothing to do with this plugin, but one thing is suspicious: the 404
   page is for a post from the missing column. (2) The URL of the 404 page is stored
   in cookie, and when close browser and re-open it again for my site I still get
   the 404 page.
 *  Plugin Author [John Clause](https://wordpress.org/support/users/johnclause/)
 * (@johnclause)
 * [11 years, 5 months ago](https://wordpress.org/support/topic/language-switcher-widget-does-not-switch-languages/#post-5646910)
 * [@retrovert](https://wordpress.org/support/users/retrovert/):
 * > The warning messages are back:
 * `qtrans_convertURL` is not a function of qTranslate-X.
 * `qtranslate_compatibility.php` was introduced in 2.7.9 and was never released
   in a stable version. I am not sure how you got it?
 * Please, summarize for me again, which problem do you have in version 2.8. Thank
   you.
 *  Thread Starter [retrovert](https://wordpress.org/support/users/retrovert/)
 * (@retrovert)
 * [11 years, 5 months ago](https://wordpress.org/support/topic/language-switcher-widget-does-not-switch-languages/#post-5646925)
 * The following are my main problems:
    1. When I click on “Russian”, from the front
   page, instead of displaying the same page with some Russian content, the site
   tries to redirect to a new URL, which is a URL of an existing single post, but
   the URL is translated into Russian. It does not find this post and pops 404. 
   2. If at this time I close browser and re-open again my site I still get the 
   same 404 page.
 * Note, that also I tried “mTranslate”, but, I had exactly the same problems with
   it as well, except, it did not cause the “warnings”.
 * Now, I apologize for my “technical” comments, I simply wanted to explain how 
   and why I changed 2.8 before I tested it.
 * I had to get rid of warnings to use 2.8, so I was trying to figure out which 
   modules were different between 2.7.9 and 2.8 that could cause the warnings. This
   is what I found:
    1. “qtrans_convertURL” is used in “xhaleera_addons.php”, a 
   new module added in 2.8. This module was not in 2.7.9, at least not in my .zip.
   2. “qtranslate_compatibility.php” was at least loaded in 2.7.9 by the “qtranslate.
   php” module, but this was commented out in 2.8. 3. When I put back into the “
   qtranslate.php” the commented line that was loading “qtranslate_compatibility.
   php”, the warning messages disappeared.
 * By no means I imply that this was the right thing to do, and I am sorry if this
   sounded like this.
 * But, this allowed me to continue testing 2.8, and then I ran into the problems
   I described above.
 * Also, Chris, I will not be able to work on the site for the next few days. So,
   I had to revert back to the old (original) “qtranslate” plugin to keep the site
   usable.
 * I realize that you will not be able to reproduce the problem on my site in the
   near future, and this makes it much harder to fix.
 * I will wait until the 2.9 release and will try it again then.
    Please, do not
   close the issue.
 * Thanks.
 *  Plugin Author [John Clause](https://wordpress.org/support/users/johnclause/)
 * (@johnclause)
 * [11 years, 5 months ago](https://wordpress.org/support/topic/language-switcher-widget-does-not-switch-languages/#post-5646958)
 * The cookie names are changed in the latest version. Please, let me know if it
   helped.
 *  Plugin Author [John Clause](https://wordpress.org/support/users/johnclause/)
 * (@johnclause)
 * [11 years, 5 months ago](https://wordpress.org/support/topic/language-switcher-widget-does-not-switch-languages/#post-5646990)
 * Is this still a problem? Try the latest version. I am closing it, we can re-open
   at any time when you have more questions.

Viewing 9 replies - 1 through 9 (of 9 total)

The topic ‘Language Switcher Widget does not switch languages’ is closed to new 
replies.

 * ![](https://s.w.org/plugins/geopattern-icon/qtranslate-x_f9f9f9.svg)
 * [qTranslate X](https://wordpress.org/plugins/qtranslate-x/)
 * [Frequently Asked Questions](https://wordpress.org/plugins/qtranslate-x/#faq)
 * [Support Threads](https://wordpress.org/support/plugin/qtranslate-x/)
 * [Active Topics](https://wordpress.org/support/plugin/qtranslate-x/active/)
 * [Unresolved Topics](https://wordpress.org/support/plugin/qtranslate-x/unresolved/)
 * [Reviews](https://wordpress.org/support/plugin/qtranslate-x/reviews/)

 * 9 replies
 * 3 participants
 * Last reply from: [John Clause](https://wordpress.org/support/users/johnclause/)
 * Last activity: [11 years, 5 months ago](https://wordpress.org/support/topic/language-switcher-widget-does-not-switch-languages/#post-5646990)
 * Status: resolved