传智播客 PHP教程 韩顺平 dedecms 项目开发笔记.doc
《传智播客 PHP教程 韩顺平 dedecms 项目开发笔记.doc》由会员分享,可在线阅读,更多相关《传智播客 PHP教程 韩顺平 dedecms 项目开发笔记.doc(67页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、要求:1. 同一开发环境. WAMP2. 最终完成a67 手机电影网的70%功能.(相当于静态页面已经提供.)3. 学习过程中,我们会分析源码和dede数据库的设计思想- phpcms 或者 cmstop4. 参加工作有 a. 全新开发 b. 加入一个团队,一起开发. c 数据的设计.学习DEDE的二次开发u cms的基本概念cms(content management system) 内容管理系统 , 主要是管理内容变化不大的数据(新闻,软件,商品,文章, 电影,视频.), u 主流的cmsdedecms 中小型网站,使用在企业级的网站不少见.phpcms 中型网站,对大型网站也很好.cms
2、top 据说对大型网站支持最好u dede的特点1. 简单、实用,开源(源码.)2. 专门用于个人,中小型门户网站., 企业也可以支持3. 架构PHP+mysql4. 前台是静态页面(访问速度开) -页面静态化技术.u dede的安装1. 先卸载apache和 mysql, 成功卸载.2. 安装Wamp (该软件包括 apche+mysql+php+phpmyadminj),如果安装后,小的半圆式白色,说明成功!3. 把uploads 文件夹拷贝到 www目录4. 把uploads 改成 dedecms名字5. 浏览器中输入 6. 进入安装界面,记住吧 gd库打开,否则后面登录管理员界面不能成
3、功!7. 指定admin的密码,然后看到如下界面8. 登录到dedecms的后台管理先把 dedecms/dede 改成manage,然后9 .当进入到管理页面后,需要做一个安全修改强烈建议data/common.inc.php文件属性设置为644(Linux/Unix)或只读(NT);u DEDE的快速入门需求1: 现在老板要求你做一个文章管理系统,栏目(类别)包括(武侠、爱情、音乐.) ,每个栏目(类别)有对应的文章,文章已经给你准备好了,请你在30分钟搞定该网站,怎么样?1. 先看看dede默认的前台首页面是怎2. 说一个dede 原理3. 我们做栏目1.先进入后台管理-网站栏目管理说明
4、: 当我们增加一个栏目时,实际上在 dede数据库中有一张表 dede_arctype表中增加了一个记录.2. 给每个栏目增加文章后台-核心-普通文章(+)-添加文章 当你添加一篇文章后,其实就在 在 dede_archives 表中添加了记录,同时 在另外一张附加表 dede_addonarticle 中记录额外信息. 生成了静态页面., 并连接3. 生成栏目的静态页后台-生成-更新栏目HTML先在请大家完成如上功能.这里dede设计使用垂直分割的技巧.注意: 如果希望在首页面看到最新的文章,请更新首页面的HTML后台-生成-更新主页面HTML刚才我们说: dede的首页面包括前台是可以是静
5、态页面,dede 支持前台页面静态化,步骤后台-生成-更新主页面HTML在dede开发过程中,目前有四类表关系一览图u 思考题2: 如果现在我们要做的是电子商务网站,卖我们的商品,这时用文章这样的形式来管理还合适吗? 每个栏目都可以指定一个内容模型什么是内容模型呢? 步骤1:先看看dede是否已经提供了商品的模型,如果提供了,你直接使用,否则自己创建.后台-核心-内容模型管理 看看是否有!有就使用,步骤上面一样.思考: 如果默认给的某个模型字段信息不够,怎么办?-自定义模型.u 需求3: 在添加某个商品的时候,我们希望多一个信息,就是付费方式,还希望多一个邮资信息,我们又该怎样处理?- 引出修
6、改内容模型的问题步骤:1. 点击 核心-内容模型管理-商品修改-字段管理-添加新字段.说明: 当你操作完毕后,就会在对应的 附件表中增加了一个对应的字段.u 需求4: 请各位同学看看,这里我们有一个问题,就是当你点击武侠,爱情,电器的时候,会找不到对应的页面,这是为什么呢?这个就是直接点击 更新栏目HTML说明: 我们设计网站前台的时候,可以参考这样一个思路: 网站分三级目录首页面-栏目页-内容页u 思考题:1. 栏目(类别)是保存在哪个表中的. 2. 一篇文章,一个商品它们最终是存放在数据库中的哪些表中? u 答: 栏目(类别)是保存在哪个表中的. dede_arctypeu 一篇文章,一个
7、商品它们最终是存放在数据库中的哪些表中?内容是分别放在两张表 ,一张是他的主表,该主表是通用 dede_archives , 附件表 dede_addonXXX. u 在DEDE中增加内容的基本步骤是怎样?(1) 找模型,如果有的话,你可以使用,但是你也可以自定义一些字段,你也全新的创建一个模型,比如: 我现在要搞一个电影网站.增加一个模型的步骤是:a. 点击核心-内容模型管理-增加新模型 , 进入页面后,自己看看就知道怎样添加了说明: 当你增加一个模型后,就会在数据库中增加一个对应的 附件表 dede_addonXXX(2) 添加一个栏目,根据你的实际情况来定, 刷新一把才看到(3) 增加内
8、容 ,根据实际情况输入即可u 说明一下DEDE 的目录结构dedecms/a 目录 用于存放生成的静态页面dedecms/data 目录 用于存放临时文件和缓存文件dedecms/images 目录 用于存放dede自己的图片dedecms/include 目录 核心类库(标签库,操作图像的类,操作数据库的类)dedecms/install 目录,安装信息dedecms/manage 目录,存放后台管理程序dedecms/member 目录,存放会员管理程序dedecms/plus 目录,存放插件程序,和将来你开发的程序模块dedecms/templates 目录,存放dede前台的所有模板文
9、件dedecms/uploads 目录,存放你上传的图片、视频。u 如何去掉广告思路: 因为dede 创建 静态页面的机制,通过模板文件,去创建对应的 静态页面,因此我们思路是,修改这个对应的模板文件.dede的标签问题:1. 如何去查阅标签手册后台-模板-默认模板管理-点一个修改可以看到参考标签u 如何去掉列表表的广告知识点: 如何去找某个栏目的列表页后台-网站栏目管理-找到对应的栏目-更新-高级选项-到 dede/templates/default /下去找到 对应的模板文件,进行修改即可,然后重新更新栏目HTML 每个栏目属于一个模型,那么他们对应的栏目列表模板是同一个,修改后,就同时收
10、到影响.上机练习:n 去掉讨厌的广告(首页面的)n 如何添加自己的广告图片在首页n 去掉讨厌的广告(某个栏目对应列表页)n 去掉讨厌的广告(文章页)文章页: 就是点击某个具体文章/商品/软件 ,所看到的具体内容.u dede标签的讲解1. dede 的标签是在 模板中使用2. 我们可以建立自己的模板文件,来学习各个标签的使用u 具体的标签使用1. 单标签用法dede:标签名 属性=“值” ./举例说明:dede:include ”head.htm”/2. 双标签用法dede:标签名 属性=”值”.内容/dede:标签名dede:标签名 属性=”值”.内容/dede举例说明:channel标签的
11、用法.-chanel标签的用法-!-channel标签类似 select * from dede_arctype where ishidden1 limit 0,8-dede:channel type=top row=8field:typename/dede:channel知识点: 如何去查看channel标签的源码. /dedecms/include/taglib/channel.lib.php3. 字段标签的用法举例!-channel标签类似 SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite
12、,siteurl,sitepath From #_arctype WHERE reid=0 And ishidden1 order by sortrank asc limit 0, 8 -dede:channel type=top row=8field:id/=field:typename/dede:channel需求: 如果,我们希望把取出的某个字段数据,进行处理,在输入,怎么办?具体: 对取出typename值,进行md5加密具体使用如下:dede:channel type=top row=8field:id/=field:typename/=field:typename function
13、=md5(me)/dede:channel4. 怎样把取出的值进行PHP运行field:字段名 runphp=”yes”这里可以写一些简单的php码(这里的php码一般是比较简单,如果复杂则可以写一个自定义函数来处理.)/field:字段名5. 如何自定义函数首先在 /include/extend.fuc.php 中添加自己的函数/*我们自定义的函数*/function abc($val)return $val.hello,world;看看怎么使用-field:typename function=abc(me)/注意: dede的标签是不可以嵌套使用,否则出问题.6. dede标签如何调用全局
14、的变量值用法是dede:global.全局变量名/思想: 很多的项目,为了开发的方便,把一些常用的变量,做成全局,然后使用使用比较方便. , dede的有一个非常重要的文件. include/common.inc.php文件,中有很多全局值.举例:-取出全局变量值dede:global.cfg_soft_lang/ 因为dede的标签是不可以嵌套,所以,如果你要在dede标签中,取出全局变量,则应当这样取field:global.全局变量名/ 等价于 field:global name=全局变量名/举例field:global.cfg_soft_lang/ u 实战阶段-a67手机电影网的开发
15、.前提: 网站的前台静态页面,已经开发好了.1 把dede首页面换成 a67网站首页面.步骤: a. 首先把 templates/defualt 备份一份b. 把templates/defualt 清空c. 把a67 的首页.html 和 images css js 整体拷贝到 templates/default下,d. 首页.html 换成 index.htme. 打开 index.htm 进行网页编码,css,js引入,images图片路径修把 “images/ 替换成 dede:global.cfg_templets_skin/images/ g. 更新首页面,浏览即可看到最新的a67
16、首页.2. 将dede首页面栏目换成a67电影网的首页面栏目a. 创建电影这个内容模型b. 创建我们的栏目(我的电影、我的电视剧)c. 使用dede 标签,在 index.htm 模板中,把我们需要的栏目内容取出dede:channel./dede:channel具体的代码是首页 dede:channel type=top row=8field:typename / /dede:channel专题3. a67网的栏目列表页面图示:点击对应的栏目,可以看到对应的栏目列表页面!步骤:a. 请先把不必要的栏目先删除.b. 看看你的电影的模型对应的列表模板文件叫什么名字,然后在 templates/d
17、efualt 目录下创建一个空的 list_movie.htm 名字.c. 更新栏目HTML d. 更改首页面的栏目的超链接,让它指向直接的列表静态页这里请大家在 首页面模板中 href 这样写dede:channel type=top row=8field:typename / /dede:channele. 把a67的栏目列表模板文件拷贝到 templates/default 名字,是list_movie.htm然后做 网站编码,资源引入(css/js), 图片的路径的替换,这个和首页面是一样.f. 把栏目的导航,的首页面改成我们的本地.练习.u 把首页面的今日更新的数据,从我们自己的de
18、de取出,并显示步骤1. 首先自己在后台添加一些数据(电影、电视剧)2. 在首页面的模板文件中,使用标签dede:arclist 来取出文档3. 具体代码是在 index.htm中写的.上机作出.u a67网的首页面的今天更新滚动内容的自定义特殊的需求,就是,我们希望在取出栏目记录 或者是 内容记录(电影,电视剧), 是更加灵活.-dede:sql举例: 使用 dede:sql语句来完成上述功能基本用法:dede:sql sql=field:title/dede具体的代码:u a67网的首页的添加我的电视剧,并完成各个栏目对应的列表页请大家完成,当我们点击我的电视剧时,就显示电视剧内容,点击电
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 传智播客 PHP教程 韩顺平 dedecms 项目开发笔记 PHP 教程 顺平 项目 开发 笔记
限制150内