1.怎样套用DZ的默认模板
DZ是个良好的PHP教材 不论是严谨性还是技巧性甚至我觉得还是很通俗的!你所要得模板格式这里都能找到!
首先我们要了解DZ的模板都在哪里:
./templates/ 这个文件夹是DZ的模板包
./templates/default/这里存放的是默认风格的模板
昨天我们已经创建了sopping.htm的购物中心模板,现在需要的就是增加HTML的代码!让我们的插件界面可以直观的显示出来!使用过DZ的都知道,论坛由顶部区域和底部区域加上中间的列表、帖子构成,所以我们第一步需要把顶底两个界面显示出来!
这里我们先学制作模板第一个猴子动作——调用模板!复制内容到剪贴板
代码:
{template header}——调用头模板
………… ——中间是插件模板
{template footer}——调用脚模板调用模式 {template 模板名} DZ使用花括号+template 模板名 调用./templates/下的各种风格模板,这种模板包含模板的方式十分的便捷!
然后就是第二个猴子动作——加载信息代码复制内容到剪贴板
代码:
<table cellspacing="0" cellpadding="0" border="0" width="{TABLEWIDTH}" align="center" style="table-layout: fixed">
<tr><td class="nav" width="90%" align="left" nowrap> <a href="index.php">$bbname</a> » {lang member_login}</td>
<td align="right" width="10%"> <a href="#bottom"><img src="{IMGDIR}/arrow_dw.gif" border="0" align="absmiddle"></a></td>
</tr></table><br>这段代码几乎是固定的,显示如下:
现在你就明白这段代码的意思,这是一个论坛分类信息的区域,一级论坛——二级分类——三级分类……。
我们开始学习HTML的几个标记:
A.表 <table>……</table>
B.行 <tr>……</tr>
C.列 <td>……</td>
注意这些都是围堵标记,内容包括其中。
目前DZ为了加快页面显示多了一个
D.<div>……</div>
我们只要套用这些标记就能做出自己的页面 例如:
复制内容到剪贴板
代码:
<div>
<table>
<tr>
<td>你好</td>
<td>谢谢</td>
</tr>
</table>
</div>这样就构成一个一行两列的表格,呵呵,很简单吧,你用office的fontpage很快就可以做出来!我只是给你们简单介绍一下。那我们再拆开上面的代码说一下:
复制内容到剪贴板
代码:
<table cellspacing="0" cellpadding="0" border="0" width="{TABLEWIDTH}" align="center" style="table-layout: fixed">【表标记】
<tr>【行标记】<td class="nav" width="90%" align="left" nowrap> 【列标记】<a href="index.php">$bbname【论坛名称】</a>【链接】 » $navtitle 【分类名称】</td>
<td align="right" width="10%"> <a href="#bottom"><img src="{IMGDIR}/arrow_dw.gif" border="0" align="absmiddle">【图片】</a></td>
</tr></table><br>大致了解了就好,我们的任务就是套用,贴上去就行,看看现在模板是什么样?
shopping.htm模板
复制内容到剪贴板
代码:
{template header}
<table cellspacing="0" cellpadding="0" border="0" width="{TABLEWIDTH}" align="center" style="table-layout: fixed">
<tr><td class="nav" width="90%" align="left" nowrap> <a href="index.php">$bbname</a> » $navtitle</td>
<td align="right" width="10%"> <a href="#bottom"><img src="{IMGDIR}/arrow_dw.gif" border="0" align="absmiddle"></a></td>
</tr></table><br>
中间等待自己加代码!
{template footer}
我们需要记住的几个常用模板CSS
A.表格的css样式定义复制内容到剪贴板
代码:
<table cellspacing="{INNERBORDERWIDTH}" cellpadding="{TABLESPACE}" width="{TABLEWIDTH}" align="center" class="tableborder">
</table>{INNERBORDERWIDTH}、{TABLESPACE}、{TABLEWIDTH}都是后台风格设置的参数
class="tableborder"是CSS.htm固定的层叠样式表单 他的定义是双线表
class="category"同上 定义是灰色背景 可能还有字体不同
class="altbg1" 同上浅灰背景 altbg1后台风格有设置
class="altbg2"同上白色背景 altbg2后台风格有设置
class="header"同上 DZ默认兰背景 粗体大字
class="outertxt"同上 黑粗小字
class="smalltxt"同上 黑细小字
2.怎么了解DZ的语言调用?
你经常会在DZ的模板里看见类似{lang faq}代码!这就是调用语言包,其实很简单本来可以写汉字,因为可能多次重复,也可能是因为便于管理,所以把各种文字归集在一起!
调用模式: {lang 语言名},和前一次一样还是熟悉的花括号+lang 语言名
那么在那里可以找到这个调用呢?
./templates/defaulttemplates.lang.php这时我们看见了模板包的这个文件,根据DZ的文件命名规范 *.lang.php 就是语言文件,我们搜索前面的语言名 faq 答案是 'faq' => '帮助',
3.什么是全局变量、变量参数、判断语句?
在模板文件中,最多出现的是变量参数,类似$member['allowuseblog'],$thread['tic'],$post['id']这些都是调用数据库数据使用,我们看到的会员编号、帖子内容、标题高亮,都是由这些变量显示出来!这里不要求大家牢记,只要你认识这些变量的样子和特征。
一般会员信息出来的变量$member打头,方括号内是他的分类,就好比会员性别、会员年龄、会员注册日期,同样$post就是帖子的代名词,$thread就是主题的代名词
全局变量和变量的区别是变量只在某个程序或者某个模板才能显示或者起作用,而全局变量是在整个论坛发挥作用例如:$discuz_uid会员编号 $discuz_username会员名称 $extracredit这是所有积分的数组,包含八种积分的名称、单位和积分数量
判断语句:DZ为了更好的控制模板界面的显示采用了<!--{if 条件}-->模板内容<!--{/if}-->对于这种判断语句大家只要熟悉,以后我们会讲他的作用和使用方法!还有<!--{loop 数组 解析变量}-->模板内容<!--{/loop}-->这种语句是把数组(简单的理解就是打包在一起的数字信息)分解开来,在模板的行和列中显示出来!
4.HTML的基本语法使用
在前言中我说过你不必去学某种语法,但并不表示一点不懂,我比较讲究实用主义,什么是我做插件需要的,那么我就去看他的方法,在今天的课程里为了要做模板我们必须去理解表单和表单域这个最基本HTML
表单:大家都看见了我们提交信息有提交框、提交按钮,这些都是让我们可以输入信息告知程序处理的入口!所谓表单就是这些不同的入口!可以让我们和程序交互信息的东东。
表单域:<FORM>称为表单标记,用以宣告此为表单模式,属于一个容器标记,表示其它表单标记需要在它的包围中才有效,简单的说表单域就是一把枪的外壳,表单就是子弹、扳机、瞄准器、撞针、枪托。只有把这些装在枪壳上那么你才可以使用这把枪打人!嘿嘿蛮暴力的!只有定义了表单域,那么才能把输入表单的信息传送给php程序,让他处理后再返回给模板显示出来!
好吧!我说的没用 给你们几个链接看看表单是那些?
HTML语言剖析——表单标记
HTML 语法教学之表单标签
今天就到这里,或许你还不理解也有可能你囫囵吞枣,没关系好好思考一下,就要看你是不是做插件的料,作为一个站长不能理解这些趁早关门、要么收费服务了,呵呵话一定要说得重才能激起你的斗志!!
[
本帖最后由 泡哥 于 2006-6-21 03:56 编辑 ]