dedecms原理及使用 |
您所在的位置:网站首页 › dedecms模板文件改成PHP文件 › dedecms原理及使用 |
dedecms原理 现在老板要求你做一个文章管理系统,栏目(类别)包括(武侠、爱情、音乐...) ,每个栏目(类别)有对应的文章,文章已经给你准备好了,请你在30分钟搞定该网站,怎么样?
步骤: 1、登录到dedecms后台创建了三个栏目(类别)后台->核心->网站栏目管理->添加顶级栏目 添加三个,刷新首页即可看看. 2、给每个栏目添加对应的文章给武侠文章栏目添加文章后台->核心->普通文章->添加文章 (缩略图代码可以拿出来用) 这里可以添加文章, 刷新首页面就看看 当你点击 某个文章的超链接时,就可以看到对应的文章内容 3、创建栏目页后台->生成->更新栏目页 这时,我们的三级页面,全部走通. 细节问题:1、dede设计者认为,每个栏目都属于一个模型 武侠文章|音乐文章=>文章模型,一个内容 模型,对应多个栏目 dede_channeltype 在默认情况下有提供5个内容模型 2、dede设计者认为,所有的数据(电影,文章,软件,新闻)属于一个栏目,为了记录这个栏目信 息,放入dede_arctype表 字段名 含义 Id 编号 主键 Topid 上一级id是谁 0代表顶级栏目 1、dede的设计者认为,所有的记录(新闻,文章,软件。。)都应该把数据放入到表 dede_archives[主表],还有一部分数据放入对应 从表 2、dede设计者认为,不管是什么样的数据,(新闻,文章,软件..)他们有相同字段,把相同的 字段放入主表(dede_archives),同时认为,每种数据,都有自己独特的字段,于是把这些 信息,放入从表。比如: 新闻news 从表:dede_addonnews 商品goods 从表:dede_addongoods 3、当我们在后台,创建一个栏目时, (1) 就会在 dede_arctype 表中记录这个栏目信息 (2) 同时,会创建一个对应的文件夹,栏目文件夹 dedecms/a/栏目文件夹/ 4、我在某个栏目,创建一条记录时, (1) 该记录会保存到 数据库中(dede_archives+对应从表) 同时成静态页面 dedecms/a/栏目文件夹/ 如果现在我们要做的是电子商务网站,卖我们的商品,这时用文章这样的形式来管理还合适吗? 但是内容管理没有商品,内容模型有商品 在dede后台的规定, 如果一个内容模型,没有一个栏目,则不会出现内容添加的选项. 隐藏栏目 隐藏内容待审核 提出一个严肃的问题. 首页如何静态化. 在dedecms 中栏目页面和首页面需要手动点击生成静态页面. 栏目页面的静态化 : 后台->生成->更新栏目页 (自动生成对应的静态页面) 首页面的静态 : 后台->生成->更新首页面( index.html) 实例2:内容模型添加字段在添加某个商品的时候,我们希望多两个信息,就是付费方式,还希望多一个邮资信息,我们又该怎样处理? dedecms允许用户自定义字段,操作如下: 后台->内容模型管理 在添加某个字段信息的时候,dede提供了一个叫联动类型的字段,常用的联动信息已经提供.地区. 比如给商品添加一个邮寄到地址 后台->内容模型管理->增加一个联动类型(注意,字段的名称,要和dede给出名字一致) 后台->内容模型管理->联动类别管理 请各位同学看看,这里我们有一个问题,就是当你点击武侠,爱情,电器的时候,会找不到对应的页面,这是为什么呢? 当我们点击首页的某个栏目,可以进入到对应的栏目列表页,需要我们手动的点击更新栏目页:步骤:后台->生成->更新栏目HTML 注意 :我可以选择你要更新的哪个栏目 说明:当我们点击更新栏目HTML,就会在该栏目对应的 目录 dedecms/a/栏目文件夹/ 生成两个静态文件 index.html 还有 xx_list.html 原理示意图: 现在我要上一个租赁信息, 需求是内容模型自己创建 myhouse (1) 创建自己的内容模型 myhouse后台->内容模型管理->填写你的信息, 最后点击创建 结果: 在 dede_channeltype 表中有这个信息; 会创建附件表 dede_addonmyhouse (1) 根据自己的需求,来创建自定义的字段 后台->内容模型管理->点击你的某个模型->字段增加, 添加自己的信息 结果: 在 dede_addonmyhouse 表中就会有一个新的字段创建, (alter table 表名 add cloumn 字段名 类型) (2) 创建一个具体的栏目出租房屋/求租房屋 到 后台->网站栏目管理 ->增加一个栏目 刷新后台页面: 点击内容管理->房屋信息 根据实际情况来填写内容. (2) 然后更新首页面和栏目页面HTML后台-> 生成 -> 更新首页面HTMl ....栏目页面HTML
每个栏目会对应两个目标文件 栏目模板,内容模板 注意: 当我们更新后,求租房屋这个 栏目页生成 ( 因为你还没有提供 对应的栏目模板,因此默认使用list_default.htm) 对应内容也会使用默认模板(这时可能提示错误) 自定义两个模版然后更新html看静态页面 大小都是0kb (3) 我们需要美工,至少两个模板列表模版list_XXX.htm 内容(文本)模板 article_XXX.htm 到此就可以把信息大量的创建. dedecms的标签使用dedecms 标签的使用 在后台->模板->默认模板管理 ,点击 修改,就可以看到 dedecms提供的标签. 思路: 因为我的首页面的静态页是通过 模板创建来,到的首页面对应的模板文件,把模板文件中关于广告的代码,去掉即可. dedecms/templets/default/index.htm 模板 广告标签是 {dede:myad} 去掉, 如果 index.htm 文件中 include其它模板文件,则需要把引入的模板文件的 myad去掉. 找到模板文件去掉广告(某个栏目对应列表页)找到该栏目的对应的模板文件.可以到 后台->栏目管理->看看某个栏目的 模板是哪个?然后修改. 学习方法:写一个自己的模版 写各种标签看效果 把主页模版改成自己的 (1) 单标签形式 : {dede:标签名 参数=’值’ /} 举例 :includelude filename=’head.htm’/} {dede:inc (2) 双标签形式: {dede:标签名 参数=’值’ ...} 内容 {/dede:标签名} 举例: {dede:channel type='top' row='8'} [field:typename/] {/dede:channel} (3) 如何对取出的字段内容,进行简单的处理[field:字段名 function=’函数名(@me)’] 我对取出的栏目信息,进行md5加密. 案例 : {dede:channel type='top' row='8'} [field:typename/]--[field:id/]--[field:typename function='md5(@me)'/] {/dede:channel} (4) 对取出的内容做一个简单的业务处理[field:字段名 runphp=’yes’] //简单的业务逻辑. [/filed:字段名] 举例说明 [field:字段名 runphp=’yes’] @me = (@me==’’) ? ‘空的’ : @me [/filed:字段名] (5) 现在我希望有自己的一个函数,该函数可以,在字段信息后面添加一个 hello, 并返回.形式是 [field:字段名 function=’函数(@me)’/] 案例: ****如何在字段上使用自定义函数*********** [field:typename function='myfun1(@me)'/] ☞ myfun1这个函数要写到 dedecms/include/extend.func.php ☞ dede标签不嵌套使用. (6) 如何在dede中使用全局的变量在dedecms/include/common.inc.php 文件中定义了很多重要的全局变量的,我们可以使用dede标签进行引用 基本使用方法: {dede:global.全局变量名/} 如果需要在{dede}标签内部使用 [field:global.全局变量名/] ☞ 支持自定义全局变量. 案例: ****如何在字段上使用自定义函数*********** [field:typename function='myfun1(@me)'/] [field:global.cfg_softname/]-[field:global.my_global_val/] {/dede:channel} ********* {dede:global.cfg_soft_lang/}--{dede:global.cfg_softname/} |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |