Joomla1.5升级为Joomla2.5(代码篇)
在本节中我们将继续讨论一下
如何将Joomla1.5版本的模板移植到Joomla2.5上
。在上一篇文章中,我们从安装的角度来讲的。但真实的情况是,及时你成功安装了模板,模板是否能够正常工作还是一个很大的问题。现在就来解决,当你成功安装了j15的模板到j25上,但依据不能正常运行的问题。导致这个问题的原因就在于joomla2.5依旧修改了一下函数的调用。
在j15的时候,系统将模板参数存储在.ini文件中,为了能够获得这些参数,我们需要读取ini文件的内容,然后加载这些数据到 JRegister对象或者JParameters对象。但在j25中,我们将模板的参数信息储存到了数据库中。我们可以通过调用 getTemplate(true)这个方法来加载这些参数。典型的代码如下:
1 2 3 4 | $app = JFactory::getApplication(); $template = $app->getTemplate(true); $params = $template->params; $variable = $params->get('variable'); |
上面的代码允许你在其他的组件或者模块中访问到模板的参数,非常的方便。
在j15到j25这个过程中,其中有一些对象和方法也已经发生了改变。
获得网站名称的方法
j15中使用
<?php echo $mainframe->getcfg('sitename');?>
在j25中需要使用
<?php $app = JFactory::getApplication(); $app->getcfg('sitename') ;?>
错误处理的方法
在j15中使用
$this->error->code $this->error->message
在j25中是使用
$this->error-getCode(); $this->error->getMessage();
输出重载
com_content.
如果在你的1.5模板中,你使用Beez重载,或者你的代码继承自Beez。你可能会遇到JHtml::icon 不被支持这个错误。解决这个错误的方法是,在html/com_content/article/default.php中加上
JHtml::addIncludePath(JPATH_COMPONENT ."/helpers");
个人经验:
如果你的模板执行后提示找不到Jparameters这个类。那么你可以在报错的文件前部加上下面的代码:
jimport('joomla.html.paramters');
这是我们的网站http://www.zmax99.com,里面有很多joomla免费教程,欢迎爱好joomla下载!zmax程序人---中国joomla专业开发团队