我有一个生成图像的独立文件,我包含了joomla框架。该文件在页面上显示为图像。 $ _SESSION为空,getUser返回NULL。 JText不知道要加载什么module.language文件,并且知道用户的默认语言。如何访问此信息/对象?
我的代码:
//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);
答案 0 :(得分:1)
使用它:
$lang =& JFactory::getLanguage();
$lang->load('mod_sample',JPATH_ROOT,'fa-IR');
或起诉,自动检测郎:
$mainframe =& JFactory::getApplication('site');
$mainframe->initialise();
$lang =& JFactory::getLanguage();
$lang->load('mod_sample',JPATH_ROOT);
答案 1 :(得分:0)
如果您一直在使用某个组件并且已成功使用JText::
,并且最近您创建了一个插件,并且令您惊讶JText::
课程无法正常工作,请阅读以下内容。< / p>
插件使用自己的语言文件。要根据Joomla! 3.x
中的系统语言自动加载语言文件,您需要使用以下代码。
$this->loadLanguage('', JPATH_BASE);
此外,您需要有一个基于插件名称的语言文件,如下所示。
<Language>.plg_<Plugin Type>_<Plugin name>.ini
因此,假设您的插件名称为coolblue
,而您正在编写英语(en-GB
)语言,此插件的类型为authentication
。所以你的文件名是......
en-GB.plg_authentication_coolblue.ini
您可以在那里存储语言字符串。 Joomla!
将为您加载语言文件,无需谨慎指定任何语言或文件。