2017-03-16 58 views
0

我试图在模板index.php文件中设置会话变量,并且它工作正常并且在每个地方获取该会话变量。Joomla在哪里设置会话,我可以在每个组件中获得

$session = JFactory::getSession(); 
$session->set('CountryCode', 'in'); 

但,当我在浏览器中使用直接的URL,然后我第一次获得会话变量开放空白文章的问题,但我刷新同一页面,然后我得到会话变量完美。

所以,你可以帮我在哪个文件中设置会话变量,以便我可以访问站点的每个组件,也可以在第一次加载页面时使用。

回答

1

模板渲染发生在组件执行后。

您可以尝试创建在组件之前执行的系统插件。

此链接包含可用的事件,您可以在钩。 https://docs.joomla.org/Plugin/Events/System#onAfterInitialise

+0

可我把代码直接在existsing插件或文件,这使得第一?如果是,你可以给我文件名吗? –

+0

你不应该这样做。更改任何核心文件都会导致更新问题。对于测试,您可以启用页面缓存插件并修改文件插件\ system \ cache \ cache.php –

+0

是的它的工作,你是对的,我已经创建了插件谢谢 –

相关问题