用户登录joomla 1.5后更改模板

时间:2010-12-03 05:45:46

标签: joomla joomla1.5

有人试图在代码中更改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);
}

1 个答案:

答案 0 :(得分:0)

没关系,我解决了。

只需更改核心库(JDocument Class)中的代码即可从会话中读取模板,工作正常。

由于