网络上有很多1.5的免费模版,但是没有2.5的模版。而当前joomla2.5版本才是最流行的。那么怎样将1.5的模版改为2.5可用呢?这是一个很好的问题。在本章中我们将对这个问题提出一个解决方案。

 

 当下载一个模版的时候,这里的模版是指的是标准模版(*.zip),而不是那种全站模版(*.jpa)

有一些模版是的名称会注明先要解压,然后安装,如(BLUEMASTERS_1.0_UNZIPFIRST.zip)。就明确说了要先解压后安装。如果直接安装会出现提示“找到不安装的.xml文件”

第一步,我们先试着去安装模版,然后看看他的错误提示。

比喻我下载要安装的模版BLUEMASTERS_1.0_UNZIPFIRST.zip。我按照提示,解压之后出现了连个*.zip文件,然后安装模版文件。在后台出现下面的错误提示:

提示很清楚,找不到component.php文件。

一般出现这种问题,是因为模版的安装文件有记录这个文件,但是系统在安装文件夹中找不到。component.php文件在将j2.5中是组件视图。一般是用于打印。关于component.php在下面的链接中有介绍。Joomla模板开发-模板介绍

我们再次解压这个文件夹,发现的确没有component.php这个文件,解决的方法很简单,就是在文件夹下面再次创建一个空的componet.php文件。创建之后,再次压缩安装。依旧出错。提示如下:

开始提示找不到params.ini。操作同上一次一样,创建一个空的文件params.ini然后再才打包安装。

这次终于成功安装了。

现在我们就成功的安装了一个1.5的模板到2.5上了。

 

操作其实是相当简单的。总结为一句话,依据错误提示来改进,如果没有文件,那么就增加。

当然如果你看过本站介绍的关于模板的相关文件的说明的文章,那么你可以采用另外一种方式来解决这个问题。那就是修改模版的templateDetails.xml这个文件,这个文件的files字段指定了要拷贝的文件。

<files>
		<filename>component.php</filename>
		<filename>favicon.ico</filename>
		<filename>index.php</filename>
		<filename>params.ini</filename>
		<filename>template_thumbnail.png</filename>
		<folder>css</folder>
		<folder>html</folder>
		<folder>images</folder>
	</files>

我们只需要修改一下这个字段指定的文件就可以了。加没有的文件进行删除。


 

当然,也许我今天遇到的1.5的模板并不能代表所有的情况。为了深入的解决问题,我们考虑一下通用的情况,j15到j25的模板有哪些区别?

 文件结构区别

 1,在1.5中,我们用params.ini文件来储存模板的参数的值。但在2.5中,所有的模板参数都储存在数据库中。因此,就没有必要要params.ini这个文件了。直接删除就行了。

2,在1.5中并没有使用error.php这个文件。在j2.5中提供这个文件。这个文件主要负责处理模版执行出粗(404)应该输出的内容。我们自己可以手动加上一个error.php。HTML或者PHP代码都行。当然,不加也没有问题。

3,在1.5中并没有template_preview.png这个图片。j2.5中引入这个图片。你要做的就是创建一个640*480的屏幕截图文件。其实不加也没有问题。只是在后台的模版管理中没有那么直观的看到而已。

templateDetails.xml文件的标签

1,install标签被 extension取代。当然不修改也行。最好还是修改一下。

将<install version ="1.5" 改为<extension version="2.5">,注意也要将最后的</install>改为</extension>

2 ,j25提供folder标签。这个标签可以直接指定一个文件。当然你可以继续用<filename>标签。这个完全没有问题。不需要修改.使用folder标签只是为了开发人员更加的轻松指定文件,而不用书写一大堆的<filename>

3, 你可以选择删除<filename>params.ini</filename>也可以不删除。如果你的模板非常的复杂,在 params.ini文件中设置了很多参数。你成功安装后,可能在后台并没有参数。因为j25不识别params.ini。解决的方案就是按照新的格式将 params.ini的参数写到tempateDatails.xml文件中。

4,参数的格式有了很大的改变

1.5的格式如下:

<params>

           <param></param>

</params>

 

2.5的新格式

<config>

           <fields name="params">

             <filedset name="advanced">

                  <field>

                    </field>

                </fieldset >

           </fields>

  </config>

 

一种简单的方法就是直接去找一个2.5的模版,然后对照着看一下。应该就理解了。

 

 5,j25现在不自动加载Mootool库了,因此如果你发现模版出现了一些异常,可能是因为没有加载mootool库造成的。那么解决的方法就是

在index.php文件的"defined('_JEXEC') or die"的后面加上 JHtml::_('behavior.framework',true).如下

截 图就懒得做了。想要详细的信息,可以参考下面的链接:http://www.joomla8.net/index.php/joomla- tutorial/6-joomla-advanced/466-how-to-convert-joomla-15-template-to-joomla-25-template

 

 

 

 

 

 

 

 



收藏
0个人 收藏

关注Joomla中国微信公众号,随时获得最新的Joomla新闻资讯!