2013-01-15 4 views
1

J'ai un fichier autonome qui génère une image, j'ai inclus le framework joomla. Ce fichier est affiché en tant qu'image sur la page. $ _SESSION est vide et getUser renvoie NULL. Le JText ne sait pas quel fichier module.language charger et quelle est la langue par défaut pour l'utilisateur. Comment accéder à ces informations/objets?joomla 2.5 php autonome JText :: _() ne fonctionne pas

Mon code:

//define constant 
define('_JEXEC', 1); 
define('DS', DIRECTORY_SEPARATOR); 

//joomla installation 
define('JPATH_BASE', '../..'); 

//include joomla core files 
require_once(JPATH_BASE . DS . 'includes' . DS . 'defines.php'); 
require_once(JPATH_BASE . DS . 'includes' . DS . 'framework.php'); 
require_once(JPATH_BASE . DS . 'libraries' . DS . 'joomla' . DS . 'factory.php'); 

$echo = JText::_("MOD_MYMODULE_TEXT"); 

header("Content-type: image/png"); 
Graph::render($echo); 

Répondre

1

utiliser ceci:

$lang =& JFactory::getLanguage(); 
$lang->load('mod_sample',JPATH_ROOT,'fa-IR'); 

ou poursuivre ce, détecter lang automatiquement:

$mainframe =& JFactory::getApplication('site'); 
$mainframe->initialise(); 

$lang =& JFactory::getLanguage(); 
$lang->load('mod_sample',JPATH_ROOT); 
0

Si vous avez travaillé avec un composant et ont été en utilisant JText:: avec succès, et récemment vous avez créé un plugin et à votre grande surprise le JText:: classe ne fonctionne pas, alors s'il vous plaît lire ci-dessous.

Le plugin utilise ses propres fichiers de langue. Pour charger un fichier de langue automatiquement en fonction de la langue du système au Joomla! 3.x, vous devez utiliser le code suivant.

$this->loadLanguage('', JPATH_BASE); 

De plus, vous devrez avoir un fichier de langue avec le nom basé sur le nom du plugin comme suit.

<Language>.plg_<Plugin Type>_<Plugin name>.ini 

permet donc de dire que votre nom de plugin est coolblue et vous écrivez pour la langue anglaise (en-GB), et ce plugin est de type authentication. Donc, votre nom de fichier serait ..

en-GB.plg_authentication_coolblue.ini 

Et vous pouvez stocker les chaînes de langue là-bas. Et Joomla! va charger vos fichiers de langue pour vous, pas besoin de spécifier discrètement une langue ou un fichier.