This is a strange issue; I had qtranslate working for some months. Today I disabled the plugin temporarily and when re-activating the plugin the mentioned “undefined index” notices start to pop up…
My solution/suggestion is to modify the qtranslate_hooks.php and call qtrans_init() when required. Like this:
(Starting at line 104)
function qtrans_useCurrentLanguageIfNotFoundShowAvailable($content) {
global $q_config;
// Add the following line:
if( !isset($q_config['language']) ) qtrans_init();
return qtrans_use($q_config['language'], $content, true);
}
function qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage($content) {
global $q_config;
// Add the following line:
if( !isset($q_config['language']) ) qtrans_init();
return qtrans_use($q_config['language'], $content, false);
}
Reason:
This warning occurs, when another plugin calls any of the filters that are hooked to qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage
before the plugins_loaded
action is called (like a plugin calling the bloginfo() function when it is loaded)
There should be no problem with the fix I post above, since the qtrans_init method will only execute the first time is is called