一.简单的基本页面的建立
新建的页面需要 php文件和该单页的模板(.htm)文件,比如:bunsen.php、bunsen.htm
第一步,在根目录下建立bunsen.php文件
单页的php文件内容如下:
<?php
require './source/class/class_core.php';//引入系统核心文件
$discuz = & discuz_core::instance();//以下代码为创建及初始化对象
$discuz->cachelist = $cachelist;
$discuz->init();
//这里放置自己的代码,变量
include template(my/bunsen);//调用单页模版文件,my为文件夹名,bunsen为模板文件名
?>
这里需要注意的是,bunsen为模板文件名,不需要加.htm扩展名,在这里模板文件存放于自己当前风格目录下的my目录;
第二步,创建模版文件,
在 template\default 建立文件夹my 并在my目录下建立bunsen.htm文件
例如: http://tefee.cn/template/default/my/bunsen.htm
基本代码如下:
{subtemplate common/header}
这里是自己正文区域的代码
{subtemplate common/footer}
其中: subtemplate common/header}、{subtemplate common/footer}分别为调用页头、页尾模板,使得单页风格与论坛保持一致;
至此,基本型单页创建完毕。演示见:http://tefee.cn/
二 . 建立可以DIY的单页教程
自己制作的单页中,如何又能使用DX的DIY功能呢?
只需要稍加改造,即可完成,如下:将单页php文件调用模板的那行代码改成:
include template('diy:my/bunsen');
这样就可以加载DIY模块,然后在单页模版中,添加DIY区域,如下:
<!--[diy=diy1]--><div id="diy1" class="area"></div><!--[/diy]-->
这就是一个DIY区域,如果要多个区域,则:
<!--[diy=diy1]--><div id="diy1" class="area"></div><!--[/diy]-->
<!--[diy=diy2]--><div id="diy2" class="area"></div><!--[/diy]-->
<!--[diy=diy3]--><div id="diy3" class="area"></div><!--[/diy]-->
这样就可以实现单页DIY功能了,需要说明的是,模版中要在什么地方加DIY区域,根据自己需要,并不是固定死的,自己设计在哪,就在哪里加入。
三.自建模板中常用的代码
下面开始讲一下模板中常用的标签及变量输出。
一、模板中使用自定义变量:
如我们在PHP文件中定义了一个变量并赋值了,如:
$siteUrl="http://tefee.cn/";
$siteName="祝君成功网站建设";
那么如何在模板中输出呢?其实这个很简单:
站点地址:$siteUrl
站点名称:$siteName
就可以输出结果:
二、条件判断和循环语句,在模板中直接使用php简单代码
模板中一般含有以下标签
if标签,else标签,loop标签 ,eval标签
1、if标签和 else标签主要是判断标签,格式如下
<!—{if 条件}–>
//Your code here…
<!—{/if}–>
和
<!—{if 条件}–>
//Your code here…
<!—{else}–>
//Your code here…
<!—{/if}–>
以上的条件可以是变量及合法的PHP函数及自定义函数。
2、 loop标签
loop标签是循环输出数组的,如果你不懂数组,那么请自行参考相关资料。
格式一:
<!–{loop $s $key $value}–>
$value
<!–{/loop}–>
相当于PHP代码中
foreach($s as $key=>$value){
echo $value
}
格式二:
<!–{loop $s $value}–>
$value
<!–{/loop}–>
相当于PHP代码中
//住$s必须是二维数组。
foreach($s as $value){
echo $value
}
3、eval标签
eval标签主要是用来在模板中执行php语法,在eval后必须紧跟合法的PHP语法,如:
<!–{eval echo ‘这是PHP语法’;}–>
基本上UCHOME模板中的标签就这么几个,也是最常用的几个了
四.技巧和注意事项
1.自建页面的浏览器标题在哪里设置,答案是在 .php页面中 给$navtitle 变量赋值即可
2..htm模板中不能包含任何类似<?php 代码,否则页面显示为空白
3. 如有其它问题请到 http://tefee.cn/home.php 交流学习