11 12
发新话题
打印

【zozi打造】模版教程之入门篇【zozi打造】

                【zozi打造】模版教程之入门篇【zozi打造】
                   注:本教程也可作为DIV+CSS入门教程。
               zozi,原创首发于读吧官方论坛,转载请注明出处。

OK。
今天我教大家认识一下模版(风格)的初级改造,目标是认识各种模版位置和各种代码,学习完本教程之后可以自己修改首页样式,对DIV+CSS有一定认识。
还是那句话,本人才疏学浅,有错误的地方还望高手不吝赐教,小生在此拜谢。

在本篇里,着重介绍的是模版的修改流程。毕竟貌似修改谁都会,——改不好还改不坏么。但是一个标准的流程却常常被人忽视。
——你忽视流程,流程也必忽视你。

首先介绍一下网站程序里常用的几个单词——所有网站程序通用,多数时候是作为文件夹出现的,当然也可以是具体文件:
复制内容到剪贴板
代码:
admin      系统管理;管理员;管理面板
backup     备份。
basic      基本。
cache      缓存。可以有效提升二次访问速度。
config     配置。重要文件,一般不建议修改。通常储存程序运行的基本设置,如数据库接口等
data       数据;数据库
font       字体
html       静态页面,在一些不严格的网站程序里也用来存放模版
images/img 图片,作为文件夹时一般也存放JS文件
include    包含。通常用来存放一些通用参数,就是各个页面都用的到的,如js
install    安装。自然是程序安装时用到的,从安全角度考虑,安装完成后一般要求删除或改名。
lang       被调用的语言包。因为可能多次重复,也可能是因为便于管理,所以把各种文字归集在一起
map        地图,网站地图。
modules    模块。就是后台扩展设置里你看到的那些。我增加的模块就是放在这个文件夹里。
task       任务。在读吧里有一个定时自动采集,不知道好不好用-_-!!
template   模版。重点文件夹……无论什么网站程序,一般模版都是放在这个文件夹里。
upload     上传。通常写文章或者发帖子时候带的附件就是放在这个文件夹里。
好。因为本章只谈模版的修改,所以我们直奔主题。
打开读吧目录下的template文件夹。这里存放的是模版,可以发现只有一个basic文件夹。
首先把默认文件夹复制一份,保存。这叫做“备份”。所谓兵马未动,粮草先行,修改任何文件都要养成第一步先备份的习惯。不光是为了到时候还原,更是为了对比修改结果,尤其是一些涉及到长宽的具体数值,谁也没那么好的记性——当然你可以拿我的忠告不当回事,到时候因为一个数字的疏忽全盘崩溃,改都没的改,你就哭去吧。
备份好后,打开basic文件夹。以下是我们本章用到的模版:
复制内容到剪贴板
代码:
index.html      首页模版
bookroom.html   分类列表页(比如“玄幻魔法”)模版。同时也作为公共书库模版。
bookinfo.html   小说介绍页模版。包含小说名称,作者,章节和内容介绍的页面
header.html     头部模版,所有页面公用
footer.html     尾部模版,所有页面公用
main.css.html   CSS样式。这个……可以理解成规定属性的文件,比如长宽、背景、位置等。具体的请搜索相关教程。
(待续)

TOP

现在时刻 21:06

TOP

首先备份以上文件。
现在用记事本打开index.html。
现在用记事本打开index.html。在修改一个东西之前,我们先要认识它。分析它每部分都是什么,才知道需要修改哪些地方……
痛苦不?没一个中文。呵呵。下面我来分析一下这里的东西。(以下每一个加括号注释的部分我都会在下面详细说明)
复制内容到剪贴板
代码:
<div class="main">          //DIV CLASS,这就是传说中的DIV+CSS了`呵呵.忽然发现原来传说离自己如此之近。
                            //这句主要就是声明以下代码调用CSS中main的设置
         <div class="side">  //这里也是声明调用, 不过因为上一个DIV没封闭,所以调用是从属于上一个CSS。(1)
               <div class="sideborder">  //这里是第一个模块的开始,对比首页和以下代码我们可以知道这个是登陆模块。
                      <div class="head">{CTL_userlogin}</div>  //这里出现了第一个全局变量。(2)
                               <div class="content">{C_viewuserstatus}</div>
                      </div>       //这里出现了第一个封闭代码。

                      <!-- IF Commendblock -->        //逻辑判断代码(3)
                                                //这里也是第二个模块的开始,是推荐模块。
                               <div class="sideborder">
                                           <div class="head">{CTL_commend}</div>
                                           <div class="content">
                                                     <ul>    //列表代码 (4)
                                                     <!-- BEGIN Commendblock -->     //循环代码。循环开始(5)
                                                                <li><a href="bookinfo.php?bid={C_bookid}" rel="external">{C_booktitle}</a></li>              //分行代码,小说名(6)
                                                     <!-- END Commendblock -->       //循环结束。
                                                                <li class="more"><a href="bookrank.php?class=recommend" rel="external">{CTL_more}</a></li>     //分行,“更多”的连接和样式。(7)
                                                     </ul>      //列表结束
                                           </div>             //封闭DIV(8)
                               </div>
                      <!-- ENDIF -->                     //结束循环

                      <div class="sideborder">           //开始下一个模块……

                …………………                     //以下省略

                …………………

                …………………
                     </div>                        //这里是首页最下面,开始逐个封闭DIV
            </div>
</div>                                             //封闭最顶端DIV,DIV调用结束。(9)      


日啊````论坛自动把空格去掉了``我可是手动一个一个加空格上去的。唉``                              
挖哈哈。看着难过不?有没有头晕恶心的症状?恩``那是正常的。想当年我第一次玩CS转的我晕头转向,喝可乐都吐……哈哈。电脑真是容易让人晕眩……恩啦恩啦。讲课。
第一行就是调用CSS。我们现在打开CSS文件——main.css.html。(其实这个应该叫CSS的模版文件)

(1)
CSS文件全部遵守下面的格式:

样式名称 {
           样式具体设置;
}
其中 {}分别代表样式设置的开始和结束,样式具体设置中行末尾的分号(;)一定要有,否则一定出错,错误表现是调用失败或一片空白……
关于样式具体设置的代码```额``那个其实只要懂得HTML语言就应该晓得````如果HTML语言也不了解``那还是不要尝试改模版了,乖乖用现成的吧````哈。不过用到的我还是会尽量说明白的。

CSS文件示例:
复制内容到剪贴板
代码:
a {
        text-decoration: none;
        color: {CSS_A};
        background: Transparent;
}
同时,DIV属于一种嵌套语言,也就是层层相套的关系:
复制内容到剪贴板
代码:
<div class="1">
          <div class="2">
                    <div class="3">
         
                    </div>
                    <div class="4">
         
                    </div>
          </div>
</div>
上例中,3和4两个同属于2,2属于1。2受到1的影响,3和4之间相对独立互不影响,但受到2和1的双重约束。

由此可以看出,index.html页首的<div class="main">其实总括了全局,包含了整个index页面,在这个页面的任何地方都可以调用main里的设置。

                                                              (待续)

PS:有关HTML语法,有兴趣的可以看看这里:
HTML语言教程[url]http://www.gzsums.edu.cn/webclass/html/html_design.html
[/url]

TOP

下面以首页转载更新模块为例简单讲一下修改流程。
引用:
其实读吧默认的那个更新列表是起点排版风格```不过看起来有人不怎么喜欢。现在我们看看怎么修改它。
打开模版目录下的main.css.html,找到如下代码:
复制内容到剪贴板
代码:
<!-- IF pubblock -->
<div class="midborder">
<div class="head">{CTL_update_copied}</div>
<!-- BEGIN pubblock -->
<div class="content">
<div class="left">[{C_typename}]&nbsp;<a href="bookinfo.php?bid={C_bookid}" rel="external" style="color: Green;">{C_booktitle}</a>&nbsp;&nbsp;<a href="html/{C_typeid}/{C_bookid}/{C_chapterid}.html" rel="external" style="color: Gray;">{C_volumetitle}&nbsp;{C_chaptertitle}</a></div>
<div class="right"><a href="authorinfo.php?target={C_author}" rel="external" style="color: Green;">{C_author}</a>&nbsp;&lt;{C_posttime}&gt;</div>
</div>
<!-- END pubblock -->
</div>
<!-- ENDIF -->
这个就是转载更新。去掉CSS样式,去掉连接和空格符等```得到下面的东西:
复制内容到剪贴板
代码:
<!-- IF pubblock -->

{CTL_update_copied}
<!-- BEGIN pubblock -->
[{C_typename}]
{C_booktitle}
{C_volumetitle}
{C_chaptertitle}
{C_author}
{C_posttime}
<!-- END pubblock -->
<!-- ENDIF -->
这些就是首页转载更新内容调用的关键组成部分了。



<!-- IF pubblock -->      //判断开始,如果有更新文章则执行下面的,没有则执行ENDIF后面的。
{CTL_update_copied}                  //“转载更新”的这4个字。是调用的语言包lang文件夹里的设置。

<!-- BEGIN pubblock -->      //开始循环。意思是如果有多个就不断循环下面的,直到全部循环完毕执行END PUBBLOCK后面的。
{C_typename}                         //分类名称,武侠还是言情```````
{C_booktitle}                        //小说名
{C_volumetitle}                      //卷名
{C_chaptertitle}                     //章节名
{C_author}                           //作者
{C_posttime}                         //更新时间
<!-- END pubblock -->         //结束循环````````

<!-- ENDIF -->             //结束判断。模块结束
这样解释应该很清楚了。如果就把这段代码放上,结果就是``所有内容挨排挤在一块,不分行不分段````所以剩下的事情就是把这些东西组织起来。其实重点就是中间循环的那一快```最好当然是用DIV+CSS布局,但是不会的话你甚至可以用DW插入表格然后把这些东西按顺序粘贴进去排好,然后拷贝回来。一样可以用。
比如象下面附件1这样:
[attach]294[/attach]
同样,你甚至可以插入一行说明```象附件2这样:

[attach]295[/attach]

TOP

现在把DW里的代码拷贝回来。记得从<table 开始拷贝,到</table>结束,上下都不要。
复制内容到剪贴板
代码:
<table width="650" height="106" border="1">
  <tr align="center">
    <td height="42" colspan="6">{CTL_update_copied} </td>
  </tr>
  <tr>
    <td height="56">{C_typename}</td>
    <td>{C_booktitle}</td>
    <td>{C_volumetitle}</td>
    <td>{C_chaptertitle} </td>
    <td>{C_author} </td>
    <td>{C_posttime}</td>
  </tr>
</table>
当然具体的长宽高需要你自行调整,这里只是演示步骤。
把这段代码想办法嵌入那段循环。最终结果:
复制内容到剪贴板
代码:
<!-- IF pubblock -->
<table width="650" height="106" border="1">
  <tr align="center">
    <td height="42" colspan="6">{CTL_update_copied} </td>
  </tr>
<!-- BEGIN pubblock -->
  <tr>
    <td height="56">{C_typename}</td>
    <td>{C_booktitle}</td>
    <td>{C_volumetitle}</td>
    <td>{C_chaptertitle} </td>
    <td>{C_author} </td>
    <td>{C_posttime}</td>
  </tr>
<!-- END pubblock -->
</table>
<!-- ENDIF -->
剩下的就是把表格美化了````不属于技术范畴。

当然,完全可以把这个表格代码全部转换成DIV+CSS,就可以和首页结合的很完美了。

今天的课程到此结束。明日请早。

PS:{}和中间的部分叫做标签,更多标签请参考本人发的《读吧标签白皮书》

TOP

占位编辑

TOP

差不多了。

TOP

不知道能不能看懂``不过既然开头了怎都要写到底。再占一个``

TOP

因为接了一个模版的业务和一个采集规则业务``同时幻剑风格模版说明书也没编写```所以时间有点紧凑。不过我会尽量在短期内完成它。

TOP

哎呀首页占完算了。

TOP

 11 12
发新话题