dz模版开发笔记.doc_第1页
dz模版开发笔记.doc_第2页
dz模版开发笔记.doc_第3页
dz模版开发笔记.doc_第4页
dz模版开发笔记.doc_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

. . . . .1、 discuz二次开发文档/wiki/index.php2、 discuz copy他人模版今天给大家讲讲 如何把已经切割好的html页面或者模仿的页面转换成可供DIY的页面请跟随教程一步一步操作如有疑问请提出 以下以家居频道为例为大家讲解我们常见的切割好的html页面包含这么几个元素 如下图图片文件夹、CSS文件夹、其它文件或图片文件夹、一个html页面2010-9-26 10:14:32 上传下载附件 (2.65 KB) 大家看下页面效果2010-9-26 10:32:09 上传下载附件 (1.61 MB) 接下来,我们就把这个页面转换成DIY页面首页我们用编辑工具打开 index.html页面我们为了能够使用统一的头部样式,这里面我们引入系统内置的头部文件(header)把页面中的关于头部的信息删除如下图所示2010-9-26 10:50:00 上传下载附件 (79.28 KB) 把系统头部(header)引入进来 引用代码 1. 复制代码如下图所示 2010-9-26 10:53:33 上传下载附件 (14.82 KB) 给新的模板起个名字 如下代码 1. 复制代码如下图所示2010-9-26 11:22:47 上传下载附件 (15.25 KB) 接下来增加可供DIY的CSS样式表如下代码 1. 复制代码如下图所示2010-9-26 11:27:31 上传下载附件 (16.22 KB) 头部接下来更换底部代码找到底部代码删除掉 换成系统内置的通用底部代码 如下图所示2010-9-26 11:44:19 上传下载附件 (22.92 KB) 增加如下代码 1. 复制代码如下图所示2010-9-26 11:47:04 上传下载附件 (5.03 KB) 到此基本改造完成 接下来我们把改造好的文件放在系统目录中去 首先我们把index.html文件改名把index.html改成list_home.htm 此处一定要注意频道模板必须以list_开头,后缀名为.htm把改好名的list_home.htm文件拷贝到 templatedefaultportal 目录下同时在templatedefaultportal 目录新建一个home文件夹 用来放家居频道的图片及样式表 此时复制 原来的文件夹 2010-9-26 11:58:17 上传下载附件 (4.5 KB) 到templatedefaultportal 目录的home文件夹 如下图所示 2010-9-26 13:11:01 上传下载附件 (7.52 KB) 接下来 用编辑器打开list_home.htm文件引入样式表文件代码如下 1. 复制代码如下图所示2010-9-26 13:20:58 上传下载附件 (12.99 KB) 同进查找img src=images/ 替换成 img src=template/default/portal/home/images/把其它用到的图片标签全替换成 template/default/portal/home/ 这个目录下就可以了接下来 我们进入后台创建一个频道模板名选择 “家居频道模板” 如下图2010-9-26 13:45:44 上传下载附件 (30.21 KB) 创建完成后,点击查看 就能看到已与系统完全整合的模板了 接下来我们把模板中的占位用的假数据换成DIY区域 用编辑器打开list_home.htm文件大家会看到有类似的如下代码 1. 2. 3. 装修资讯 七步改造计 为夏日客厅换新颜4. 行业资讯 拆改承重墙如同醉驾需缴费5. 装修资讯 玩转极简主义 构造冷色系居室空间6. 家居风水 周星驰于文凤分手 防小三家居风水7. 装修资讯 小身材大味道 边角料再利用8. 装修资讯 茶几布局 随性设计耐保养9. 10. 复制代码把其中的 1. 2. 装修资讯 七步改造计 为夏日客厅换新颜3. 行业资讯 拆改承重墙如同醉驾需缴费4. 装修资讯 玩转极简主义 构造冷色系居室空间5. 家居风水 周星驰于文凤分手 防小三家居风水6. 装修资讯 小身材大味道 边角料再利用7. 装修资讯 茶几布局 随性设计耐保养8. 复制代码换成 1. 复制代码完成后是这个样子 1. 2. 3. 复制代码其中的 diy=diy1 和 div id=diy1要匹配 且 在一个页面中不能重复 如果要在第二个区域里面使用的话就应该是 diy=diy2 和 div id=diy2 或者diy=home 和 div id=home 或者diy=discuz 和 div id=discuz 只要在一个页面内不重复 随你怎么写都可以如下图所示 2010-9-26 14:15:49 上传下载附件 (13.47 KB) 此时就完成了占位数据 转换成DIY区域的过程在上面的过程中 这样的替换并不是最优化的,我们接下来进行改进,让DIY更加灵活此处的结构是这样子的如下图 2010-9-26 14:21:10 上传下载附件 (17.3 KB) 实现它的代码是这样子的 1. 2. 玩转极简主义 构造冷色系居室空间3. 今夏最流行的设计当属极简主义,色彩也从华丽深沉转变为了优雅素净。玻璃、金属、木质等较能体现简单特性的材质.详细4. 5. 6. 装修资讯 七步改造计 为夏日客厅换新颜7. 行业资讯 拆改承重墙如同醉驾需缴费8. 装修资讯 玩转极简主义 构造冷色系居室空间9. 家居风水 周星驰于文凤分手 防小三家居风水10. 装修资讯 小身材大味道 边角料再利用11. 装修资讯 茶几布局 随性设计耐保养12. 13. 14. 复制代码我们可以把整个区域做为一个DIY区域接下来 我们进入后台-门户-模块模板-点击添加,这里我们以文章为例,选择文章类 进行提交为模板起个名称比如“首页中间列表”删除代码框里面的内容 拷贝上面的代码进来 1. 2. 玩转极简主义 构造冷色系居室空间3. 今夏最流行的设计当属极简主义,色彩也从华丽深沉转变为了优雅素净。玻璃、金属、木质等较能体现简单特性的材质.详细4. 5. 6. 装修资讯 七步改造计 为夏日客厅换新颜7. 行业资讯 拆改承重墙如同醉驾需缴费8. 装修资讯 玩转极简主义 构造冷色系居室空间9. 家居风水 周星驰于文凤分手 防小三家居风水10. 装修资讯 小身材大味道 边角料再利用11. 装修资讯 茶几布局 随性设计耐保养12. 13. 14. 复制代码如下图所示 2010-9-26 14:31:07 上传下载附件 (39.54 KB) 接下来把代码框中的代码进行转换把以下代码 1. 2. 玩转极简主义 构造冷色系居室空间3. 今夏最流行的设计当属极简主义,色彩也从华丽深沉转变为了优雅素净。玻璃、金属、木质等较能体现简单特性的材质.详细4. 5. 6. 装修资讯 七步改造计 为夏日客厅换新颜7. 行业资讯 拆改承重墙如同醉驾需缴费8. 装修资讯 玩转极简主义 构造冷色系居室空间9. 家居风水 周星驰于文凤分手 防小三家居风水10. 装修资讯 小身材大味道 边角料再利用11. 装修资讯 茶几布局 随性设计耐保养12. 13. 14. 复制代码改造成如下代码 1. 2.3. index=14. title5. summary详细6. /index7.8. 9. 10. loop11. catname title12. /loop13. 14. 15. 复制代码其中 title 表示标题,url 表示 链接,target 表示链接打开的方式,summary表示文章的简介。其它内容请参考说明其中index=1. /index表示第一条数据 1. index=12. title3. summary详细4. /index复制代码其中 loop./loop表示循环 1. loop2. catname title3. /loop复制代码现在模块模板就制作完成了接下来 我们在频道的前台进行调用 在频道的前台页面 点DIY会看到中间部分没有内容 会多出一个浅色的条 便是DIY区域如下图2010-9-26 14:53:27 上传下载附件 (13.36 KB) 我们在DIY区域里面拖入一个100%的框架 把标题去掉如下图2010-9-26 14:56:47 上传下载附件 (6.87 KB) 接下来选择样式 把边框设为0PX ,外边距也设为0PX如下图2010-9-26 15:00:19 上传下载附件 (8.07 KB) 完成后 在此框架内拖入一个文章模块 并选择刚才创建的模块样式,如下图2010-9-26 15:04:57 上传下载附件 (18.15 KB) 完成后选择样式把边框、外边距、内边距都设为0PX如下图2010-9-26 15:09:13 上传下载附件 (11.22 KB) 到此模板的制作就完成了,其它内容可仿造以上设置 进行制作 延伸阅读:全方位立体式讲解DIY技巧集锦/thread-1909461-1-1.html百变幻灯片,完全DIY(高级教程)/thread-1906721-1-1.html教你如何把切割好的html页面转换成可供DIY的页面(高级教程)/thread-1908115-1-1.html全方位立体式讲解DIY技巧集锦第二弹/thread-1925337-1-1.html轻松运营(1)Discuz!X 1.5二级域名设置/thread-1879755-1-1.htmlDiscuz! X1.5运营宝典(二)妙用频道功能,轻松提升媒体价值/thread-1865090-1-1.html3、 在防止数据库注入时候,可以用intval函数来获取变量的整数值(即主动防止注入,判断id是否是一个数字。)例子:function portaltopicgetcomment($topcid, $limit = 20, $start = 0) $topcid = intval($topcid);$limit = intval($limit);$start = intval($start);4、 图片无法显示也可能是目录权限造成的。(例如验证码不现实等问题)5、 PHP利用iframe上传文件获取返回值2008-12-02文章来源:浏览次数:2123if($result) echo 上传成功!文件路径为:.$file2; echo ; echoparent.document.form1.img.value=document.getElementById(img).value; 文件上传成功后,把文件路径写入一个隐藏的域中,然后用DOM原理把隐藏域中的VALUE发送到父框架的img文本框中:6、文字在这里面 这种做法是错误的。7、ksort 对数组按照键名排序Example #1 ksort() 例子lemon,a=orange,b=banana,c=apple);ksort($fruits);foreach($fruitsas$key=$val)echo$key=$valn;? 以上例程会输出:a = orangeb = bananac = appled = lemonhttp_build_query 生成 URL-encode 之后的请求字符串bar,baz=boom,cow=milk,php=hypertextprocessor);echohttp_build_query($data);/输出结果foo=bar&baz=boom&cow=milk&php=hypertext+processor? 综合实例function get_sign($data, $key) $param = array_filter ( $data, empty_filter );/enpty_filter也是一个函数ksort ( $param );$query = http_build_query ( $param, , & ) . $key;return md5 ( $query );8、实现自动提交的代码: window.onload = function() document.getElementById(form2).submit(); document.getElementById(iframebox).style.display=block; document.getElementById(box).style.display=none; ; 此段代码实现了当文件被打开时候,自动实现form2内容提交,iframebox和box内容隐藏的功能9、在数据库语句中key是保留字段,在输入他的时候要记得加上key10、SELECT A.*,B.id,B.cid,B.posttime AS ctime FROM content A LEFT JOIN collection B ON A.id=B.id WHERE B.uid=1 ORDER BY B.cid DESC LIMIT 0,6);此句的意思是指查询用户uid=1在content表和collection表id相同的所有内容。(适合多对多的表的查询)11、多对多数据表,可以再建立一个表,然后在用户执行操作时候,写入第三个表,然后用多对多的操作对数据表进行查询(可以以商品收藏为例查看)12、PHP中JSON的应用互联网的今天,AJAX已经不是什么陌生的词汇了。说起AJAX,可能会立即想起因RSS而兴起的XML。XML的解析,恐怕已经不是什么难题了,特别是PHP5,大量的XML解析器的涌现,如最轻量级的SimpleXML。不过对于AJAX来说,XML的解析更倾向于前台Javascript的支持度。我想所有解析过XML的人,都会因树和节点而头大。不可否认,XML是很不错的数据存储方式,但是其灵活恰恰造成了其解析的困难。当然,这里所指的困难,是相对于本文的主角JSON而言。JSON为何物?我就不重复概念了。通俗的说,它是一种数据的存储格式,就像PHP序列化后的字符串一样。它是一种数据描述。比如我们将一个数组序列化后存放,就可以很容易的反序列化后应用。JSON也是如此,只不过他搭建的是客户端Javascript和服务端PHP的交互桥梁。我们用PHP生成JSON后的字符串,然后把这个字符串传给前台Javascript,Javascirpt就可以很容易的将其反JSON然后应用。说通俗点,它真的很像数组。言归正传,如何使用JSON。PHP5.2开始内置了JSON的支持。当然,如果低于这个版本的话,那么市面上有很多PHP版本的实现,随便下一个用就OK啦。现在主要是说说PHP内置支持的JSON。很简单,两个函数:json_encode和json_decode(跟序列化很像啦)。一个编码,一个解码。先看看编码的使用: 陈毅鑫, nick=深空, contact=array( email=shenkongatqqdotcom, website=, ) ); $json_string=json_encode($arr); echo$json_string; ?很简单的将一个数组JSON了。需要指出的是,在非UTF-8编码下,中文字符将不可被encode,结果会出来空值,所以,如果你使用gb2312编写PHP代码,那么就需要将包含中文的内容使用iconv或者mb转为UTF-8再进行json_encode,上面输出结果如下:name:u9648u6bc5u946b,nick:u6df1u7a7a,contact:email:shenkongatqqdotcom,website:我都说了和序列化很像,你还不信。编码后就要解码,PHP提供了相应的函数json_decode,json_decode执行后,将会得到一个对象,操作如下: 陈毅鑫, nick=深空, contact=array( email=shenkongatqqdotcom, website=, ) ); $json_string=json_encode($arr); $obj=json_decode($json_string); print_r($obj); ?访问对象内的属性会吧?$obj-name,这样子的,当然,也可以把它转位数组,方便调用啦: $json_string=json_encode($arr); $obj=json_decode($json_string); $arr=(array)$obj; print_r($arr);PHP转来转去的用途不是特别大,除了缓存生成,感觉还不如直接存数组呢,不过,当你和前台交互的时候,它的作用就出来咯,下面看看我怎么用Javascript来使用这段字符: vararr=name:u9648u6bc5u946b,nick:u6df1u7a7a,contact:email:shenkongatqqdotcom,website:; alert() 上面中,直接将这个字符串赋给一个变量,它就变成一个Javascript数组了(专业化术语应该不叫数组,不过由于PHP的习惯问题,我就一直叫数组好了,方便理解)。这样,可以很方便的对arr进行遍历或者任意做你想做的事情了。写到这里,好像都没提到AJAX哦?是哦,联想一下,如果服务端返回的re

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论