destoon开发文档.docx
- 文档编号:9107837
- 上传时间:2023-05-17
- 格式:DOCX
- 页数:17
- 大小:88.04KB
destoon开发文档.docx
《destoon开发文档.docx》由会员分享,可在线阅读,更多相关《destoon开发文档.docx(17页珍藏版)》请在冰点文库上搜索。
destoon开发文档
常用的destoon常量、模版标签大全以及一些开发心得
本人接触DT时间不算太长,只因为新换的这份工作,网站就是用的destoon,也算是从零开始吧,destoon不算很难,跟大部分的网站系统都差不多,大概熟悉一下基本上就可以开始上手开发了。
一、先介绍一下destoon的目录结构,下边是destoon中一些核心的文件
admin系统核心后台管理
├image后台风格
├template后台模板
/api系统及第三方接口
├kf在线客服
├map电子地图
├oauth一键登录
├pay支付接口
├stats第三方统计
├trade担保交易
├ucenterUCenter
/file
├backup数据库备份
├cache缓存
├captcha验证码字体
├chat聊天记录
├config配置
├data导数据导入
├email邮件列表
├flashFlash文件
├font中文字体
├image公用图片
├ipdataIP数据库
├log日志
├md5MD5镜像
├mobile手机列表
├scriptjavascript
├sessionSESSION
├setting配置数据
├temp临时目录
├update系统更新
├upload上传文件
/include核心类库
/install安装程序
/lang语言包
/module功能模块
├article文章模块
├article/admin文章管理本文转自蹲屋吧笑话网
├article/admin/template文章管理模板
├article/common.inc.php文章模块初始化
├article/global.func.php文章核心函数
├article/article.class.php文章核心类
├article/index.inc.php文章首页
├article/index.htm.php静态文章首页
├article/list.inc.php文章列表页
├article/list.htm.php静态文章列表页
├article/show.inc.php文章内容页
├article/show.htm.php静态文章内容页
├article/search.inc.php文章搜索
├article/task.inc.php文章计划任务
/skin风格皮肤
├default默认风格
├default/image图片文件
├default/style.cssCSS文件
/template模板文件
├default默认模板
├default/index.htm首页模板
/upgrade系统升级
/admin.php后台入口
/common.inc.php系统初始化
/config.inc.php系统配置
/index.html静态首页
/index.php动态首页
/version.inc.php版本控制
Destoon也算是mvc框架吧,(如果不知道什么事MVC可以先去XX一下)举个例子,根目录下的文件夹/company里面的文件是MVC中的C,它控制对应module/company中的文件也就是我们说的M,最后我们通过V也是就是tempalte/default/company对应的文件来显示我们的界面,整个流程基本就是这样的。
只要把这个流程弄清楚了,其他的就是写代码编程序的问题了。
二、主要的模版标签以及调用的方法
1.全局标签
网站名称:
{$DT[sitename]}
网站地址:
{DT_PATH}
网站LOGO:
{if$MODULE[$moduleid][logo]}{DT_SKIN}image/logo_{$moduleid}.gif{elseif$DT[logo]}{$DT[logo]}{else}{DT_SKIN}image/logo.gif{/if}
版权信息:
{$DT[copyright]}
风格路径:
{DT_PATH}
客服电话:
{$DT[telephone]}本文转自蹲屋吧笑话网
ICP备案号:
{if$DT[icpno]}
VIP会员名称:
{VIP}
真实货币名称:
{$DT[money_name]}
真实货币单位:
{$DT[money_unit]}
虚拟积分名称:
{$DT[credit_name]}
虚拟积分单位:
{$DT[credit_unit]}
Title(网站标题):
{$seo_title}
MetaKeywords(网页关键词):
{$head_keywords}
MetaDescription(网页描述):
{$head_description}
这些全局标签是随时拿出来都可以用的,不仅是在php文件中,在htm文件中也都是可以拿来用的,所以为了快速的、简洁的写代码,这些全局变量我们一定要熟识。
2.连接地址
默认各个模块连接:
会员:
{$MODULE[2][linkurl]}
供应:
{$MODULE[5][linkurl]}
求购:
{$MODULE[6][linkurl]}
行情:
{$MODULE[7][linkurl]}
公司:
{$MODULE[4][linkurl]}
展会:
{$MODULE[8][linkurl]}
资讯:
{$MODULE[21][linkurl]}
招商:
{$MODULE[22][linkurl]}
品牌:
{$MODULE[13][linkurl]}
人才:
{$MODULE[9][linkurl]}
知道:
{$MODULE[10][linkurl]}
专题:
{$MODULE[11][linkurl]}
图库:
{$MODULE[12][linkurl]}
视频:
{$MODULE[14][linkurl]}
下载:
{$MODULE[15][linkurl]}
发布信息:
{$MODULE[2][linkurl]}{$DT[file_my]}
企业商铺:
{$MODULE[2][linkurl]}home.php
查看站内信:
{$MODULE[2][linkurl]}message.php
管理买卖交易:
{$MODULE[2][linkurl]}trade.php
完善企业资料:
{$MODULE[2][linkurl]}edit.php?
tab=2
注册:
{$MOD[linkurl]}{$DT[file_register]}
登录:
{$MODULE[2][linkurl]}{$DT[file_login]}
找回密码:
{$MOD[linkurl]}send.php
VIP页面:
{$MODULE[2][linkurl]}grade.php
WAP浏览:
{ifextend_setting('wap_enable')}
RSS订阅:
{ifextend_setting('feed_enable')}|
本文转自蹲屋吧笑话网
行情速递:
{$MODULE[7][linkurl]}{rewrite('price.php?
product=all')}
企业新闻:
{$MODULE[4][linkurl]}{rewrite('news.php?
more=1')}
公告:
{extendurl('announce')}
推广:
{extendurl('spread')}
广告:
{extendurl('ad')}
友情链接:
{extendurl('link')}
申请友情链接:
{extendurl('link')}{rewrite('index.php?
action=reg')}
留言本:
{extendurl('guestbook')}
投票:
{extendurl('vote')}
这些链接地址也挺方便的,用的时候直接拿来就行。
3.首页调用
导航菜单:
首页 {$m[style]};"{/if}>{$m[name]}
{loop$MODULE$m}
{if$m[ismenu]}
{/if}
{/loop}
调用登录模块:
{if$DT[page_login]}
{template'user','chip'}
{/if}
调用分类模块:
{php$mid=5;}
{template'catalog','chip'}
4.各个模块数据的调用
供应:
最新供应信息:
1.
--{tag("moduleid=5&condition=status=3&length=34&condition=status=3&pagesize=5&order=addtimedesc&template=list-trade")}-->
2.
--{php$tags=tag("moduleid=5&condition=status=3&length=34&condition=status=3&pagesize=5&order=addtimedesc&template=null");}-->
{loop$tags$k$t}本文转自蹲屋吧笑话网
{/loop}
标签调用理论上需要网站管理人员有一定的HTML+CSS知识,并对PHP+MySQL有初步的了解。
调用过程实际是按照调用条件从数据表读取调用数量条数据,并依排序方式排序,最终通过标签模板的布局输出数据。
函数原型tag($parameter,$expires=0)$parameter表示传递给tag函数的字符串,系统自动将其转换为多个变量例如传递table=destoon&pagesize=10,系统相当于得到$table=‘destoon’;$pagesize=10;
两个变量$expires表示缓存过期时间>0缓存$expires秒;0–系统默认时间;-1–不缓存;-2–缓存SQL;一般情况保持默认即可。
变量$tags以数组类型保存标签调用的数据,可通过loop语法遍历显示。
$pages保存数据分页代码,仅在调用了分页时有效。
$
path模块路径。
常用字段title标题;linkurl链接;catid分类ID;introduce简介;addtime添加时间;
常用函数dsubstr($string,$length,$suffix=”)将字符串$string截取为$length长,尾部追加$suffix(例如..)
set_style($string,$style=”,$tag=‘span’)将字符串$string置于$tagHTML标签中并设置style为$stylelinkurl($linkurl,$absurl=0)将相对路径$linkurl修补为绝对路径(防止链接错误)
date($format,$timestamp)将时间戳$timestamp转化为$format(例如Y-m-d)格式
标签模板模板保存于./template/default/tag/目录;建议不要删除或者修改自带的模板,推荐在自带模板基础上新建模板并应用。
有时候难免会出现系统自带模版不能满足需求的情况,这时候你可以在此目录下新建一个模版文件,然后按照自己的需求写出自己的模板。
destoon显示地区
显示地区:
需要的函数是include/module.func.php/get_mainarea($areaid,$area);
php页面:
$AREA=cache_read(‘area.php’);//读取缓存文件
静态页面调用:
{php$mainarea=get_mainarea(0,$AREA)}
{loop$mainarea$k$v}
{if$k%2==0}
areaid=’.$v['areaid'].’&typeid=’.$typeid)}”>{$v[areaname]}
{if$k%2==1}
{/loop}
还有一种方法就是直接标签调用,,不错的,直接从destoon数据库里取出信息
调用分页:
分页标签:
本文转自蹲屋吧笑话网
–{tag(“moduleid=$moduleid&c=3
$dtype&catid=$catid&pagesize=4&page=$page&showpage=1&datetype=5&order=”.$MOD[order].”&template=list-sell”)}–>
分页:
{if$showpage&&$pages}
调用分类:
主要方法
$maincat=get_maincat(0,$CATEGORY);
get_maincat(0,$CATEGORY)——在include/global_func.php中
$childcat=get_maincat(0,$CATEGORY,1);—调用超级栏目下的1级目录
0代表最最根目录1代表level为1的目录level手动设置默认都为1
如果0改为3则为catid为3的目录
小注意:
$CATEGORY=cache_read(‘category-’.$moduleid.’.php’);此文件在模块页的common.inc.php页面中
调用
{loop$maincat$k$v}
{if$k%$DT[page_subcat]==0}
{if$k%$DT[page_subcat]==($DT[page_subcat]-1)}
{/loop}
注意:
在其模块module文件夹下的php页面里必须有$maincat
$MOD[linkurl]是模块也首页地址$v[linkurl]其下列表页加catid
什么是标签调用?
标签调用是根据调用条件(condition)从数据表(table)读取调用数量(pagesize)条数据,并按排序方式(order)排序,最终通过标签模板的布局输出数据。
可以看出,标签的工作分两个部分,一是读取数据,二是显示数据。
标签函数原型
标签函数保存于include/tag.func.php
tag($parameter,$expires=0)
$parameter表示传递给tag函数的字符串,系统自动将其转换为多个变量
例如传递table=destoon&pagesize=10&hello=world
系统相当于得到
$table=‘destoon’;
$pagesize=10;
$hello=‘world’;
三个变量
$expires表示标签缓存过期时间
>0缓存$expires秒;0–系统默认标签缓存时间;-1–不缓存;-2–缓存SQL结果;
一般情况保持默认不需要传递。
本文转自蹲屋吧笑话网
数据读取过程
例如以下标签:
–{tag(“table=sell&c=3&order=addtimedesc&pagesize=10″)}–>
会被转换为如下的SQL语句:
SELECT*
FROMdestoon_sell
WHEREstatus=3
ORDERBYaddtimeDESC
LIMIT0,10
读出的数据会保存在$tags数组里
数据显示过程
1、通过标签模板显示
传递&template=abc给标签函数,例如:
–{tag(“table=…&template=abc”)}–>
默认的标签模板保存在模板目录/tag/目录里,例如&template=abc将调用模板目录/tag/abc.htm模板来显示数据
如果标签模板放于其他目录,例如def,则传递&dir=def&template=abc,系统将调用模板目录/def/abc.htm模板
2、直接在模板里循环数据
–{php$tags=tag(“table=…&template=null”);}–>
此写法传递标签模板为null,并且直接返回数据给$tags数组,此时可以直接在模板里循环了
以下为一个完整的示例:
–{php$tags=tag(“table=…&template=null”);}–>
{loop$tags$t}
…
{/loop>
第一种写法一般用于多次调用的数据,第二种写法一般用于只调用一次的数据。
常用参数及含义
moduleid
moduleid指模块ID,可在后台模块管理里查询。
对于直接调用模块的数据,设置正确的模块ID后,将不需要传递table参数,系统会自动获取。
例如传递moduleid=5,系统将识别为调用供应信息,自动设置table参数为sell
table
table指表名,可在后台数据库维护里查询。
对于Destoon系统表,不需要加表的前缀;对于非Destoon系统表,需要填写完整的表名,且传递prefix参数
例如对于Destoon系统表,传递table=sell,如果表前缀为destoon_,系统将识别表名为destoon_sell
对于非Destoon系统表,传递table=tb_abc&prefix=或者table=abc&prefix=tb_,系统将识别表名为tb_abc
fields
fields指查询的字段,默认为*。
可以传递例如fields=title,addtime,但是一般情况下无需传递,Destoon独有的标签缓存机制会自动缓存查询结果,不必担心效率问题。
Condition本文转自蹲屋吧笑话网
condition指查询的条件,如果不传递,则为1,代表任意条件的数据(此项需了解SQL语法)。
Destoon所有模块遵循统一标准开发,所以很多条件是通用的。
例如status=3表示正常通过的信息、status=3andlevel=1表示级别为1的信息、status=3andthumb<>”表示有标题图片的信息等。
order
order指数据的排序方法(此项需了解SQL语法)。
例如order=addtimedesc表示按添加时间降序排列、order=itemiddesc表示按itemid降序排列、order=rand()表示随机数据等。
pagesize
pagesize指调用数据的数量,如果不传递,默认为10。
template
template指指定的标签模板,如果不传递,默认为list,位于模板目录/tag/list.htm,如果传递为null,表示不应用标签模板。
参见上述数据显示过程。
其他常见用法举例
控制标题长度
在标签里传递length参数,例如&length=20表示20个字符长度(GBK一个汉字占2个字符,UTF-8一个汉字占3个字符),一般情况建议用css隐藏多余字符(定义height和overflow:
hidden)
传递length参数,系统仅对title字段自动截取,如果需要截取其他字段,可用dsubstr函数
例如{dsubstr($t[company],20,‘…’)}表示截取company字段为20个字符,截取后,结尾追加…
设置日期显示格式
可以在标签里传递datetype参数:
1表示年;
2表示月-日;
3表示年-月-日;
4表示月-日时:
分;
5表示年-月-日时:
分;
6表示年-月-日时:
分:
秒
也可以在模板里直接使用date函数,例如{date(‘Y-m-d’,$t[addtime])}表示将时间转换为年-月-日格式
调用某一分类的信息
在标签里传递catid参数,例如&catid=5表示调用分类ID为5的所有信息。
如果调用多个分类,用逗号分隔分类ID,例如&catid=5,6,7表示调用分类ID为5、6、7的所有信息。
分类调用默认包含子分类的信息,如果不需要包含子分类,可设置&child=0参数。
例如&catid=5&child=0表示只调用分类ID为5的信息,不包括子分类的信息。
调用某一地区的信息
调用地区信息和上述调用分类信息的方法完全相同,将其中的catid换为areaid即可。
显示信息所在分类
控制列数本文转自蹲屋吧笑话网
此项常用于图片的布局,可使用cols参数。
例如调用
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- destoon 开发 文档