有人试图在代码中更改joomla 1.5模板吗?不知道如何在当前版本上执行此操作。我只是想在用户登录后更改模板。
所以,我写了这样的代码:
$mainframe->setTemplate('newtemplate');
但它不起作用。当我看到joomla application.php,哎呀,那里没有setTemplate函数,但它曾经在1.5之前存在(基于我在网上的搜索)。 有谁知道怎么做?
更新: 似乎我们可以设置用户状态并只读取该用户状态,然后渲染。但我不知道joomla在哪里渲染模板,因为我在library / joomla / application.php中放了一个代码,insite render(),但它没有被执行。这就是我所做的:
function render()
{
$params = array(
'template' => $this->getTemplate(),
'file' => 'index.php',
'directory' => JPATH_THEMES
);
// I added this code, where i set the user state $option.template somewhere else
$template = $mainframe->getUserState( "$option.template", 'FoxySales01VIP' );
if(!empty($template)){
$params['template'] = $template;
}
$document =& JFactory::getDocument();
$data = $document->render($this->getCfg('caching'), $params );
JResponse::setBody($data);
}
答案 0 :(得分:0)
没关系,我解决了。
只需更改核心库(JDocument Class)中的代码即可从会话中读取模板,工作正常。
由于