文档库 最新最全的文档下载
当前位置:文档库 › 《163K地方门户网站系统》二次开发文档

《163K地方门户网站系统》二次开发文档

《163K地方门户网站系统》二次开发文档
《163K地方门户网站系统》二次开发文档

Mh_163K系统模版二次开发文档

序言

我们尝试新的功能将引领行业前沿,一切为用户着想,你的体验反馈将是我们不断完善的源泉.你的思路将是我们开发的动力,你的需求将是我们开发的根本,我们一起做好无限的Mh_163K!

本文旨于如何应用万能标签系统的应用.为了更直观描述,会引用甚至转义一部分术语.目的是让初学者更容易上手.

(一):模版文件夹结构:

/template/pc/模版套系文件夹/ 用于电脑版的主站模版文件.

/template/wap/模版套系文件夹/ 用于手机版的主站模版套系:文件结构和电脑版要完全一致并对应

如电脑版内有/template/pc/aaa/ 套系模版wap里面也必须同时有

aaa套系

/template/zhuanti/company/套系文件夹/ 口碑店铺模版:套系取名规则必须是8位以下纯数字(将来会支持英文字符,等待升级完善).

/template/zhuanti/fuwu /套系文件夹/ 服务机构模版:套系文件夹名也必须是纯数字.

/template/zhuanti/news/套系文件.html 专题新闻模版:html文件.非文件夹.

/template/zhuanti/qiye/套系文件夹/ 企业模版,也必须是纯数字文件夹.

/template/zhuanti/shop/套系文件夹/ 商城模版(开发中)

/template/zhuanti/tg/套系文件夹/ 团购模版:字母文件夹(开发中)

(二): 模版制作:

1:建立自己的套系:

1):你只需要在../template/pc/文件夹下新建一个英文名文件夹,该文件夹名就是你的新套系.

如: ../template/pc/Scholarly/ 这里的Scholarly 就是你的新模板套系,建好后在后台标签管理和模板选择里就能看到.

2):新套系里必须具备所有和官方默认模板套系里面完全相同的htm和html文件数量和名称. 内容可以自定,Js和css名可以自定.

2: 说明和注意事项:

1:完全打破了前版本的局限性.各套系模版完全独立.包括解析出来的标签.

如主站/pc/default默认模版中解析{$tplPath}为../template/pc/default/

而同样的标签放在专题新闻模版中{$tplPath}会解析为../template/zhuanti/news/

2:模版中标签越少,解析速度越快.如果你为自己的网站创建一套模版.

请尽量将你网站中固定的信息直接写到模版中.如网站名称,js地址.css地址.页面固定调用的图片地址.网站链接地址.导航等.

如:你创建一套../template/pc/usertemp/ 其中的usertemp就是你的电脑版的模版套系名称.写模版时.由于你的模版位置已经固定.:

这中间的{$tplPath}就没有必要写.直接写成:

将会提高程序运行速度.

3:各套系(包括新建套系)中的文件数量必须独立完整.

如: /template/zhuanti/qiye/1/ 套系文件夹下也必须有自己独立的page_head.html和Page_bottom.html模版文件.

4:系统解析不到相应的模版文件会报告是哪个模版文件缺少.如有报告.请补充完整即可. 5:在制作和修改模版时.可以将缓存系数设置为-1,禁止缓存.就能实时看到模版改动后的解析效果.

(三):标签模版的结构和概念:

1:框架和块:任何一个网页整页.都可以看成一张海报,一张大图.一面墙.一个整体.

我们这里引入一个概念:块.一个完整网页看成一个整块.既然是一个块.那么就可以分割成无数小块.这种分割方式就叫框架式.分割出来的大块小块组合就看成了框架.

2:标签层:在html中就有层的概念,这里也引用一下,意思基本一致.

一个网页按照”品”字形分割,我们这里叫块分割,可以将一个网页在平面上分割成很多块:头部块,中部块,尾部块.

换一种方式分割:按照”回”字形分割,我们标签系统里就叫层分割.一个块可以分成无数层.层分割是嵌套关系.

该模版结构分析:

整页分为上中下3块. 网站头部,中部块,网站尾部3个顶层标签.

网站头部:中嵌套了log和广告两个并排同层关系标签.

中部块:中有3个标签:首页专用_新闻,首页房产推荐,和首页广告.这3个同层并列关系. 而{新闻}中,又有两块图片新闻和新闻列表. 新闻列表再次分为{头条}和{新闻推荐列表}

而这整个页面的html模版文档里,只有:

{$Default_头部}

{$Default_中部}

{$Default_尾部}

这三行内容.其它所有的标签都是套在这三个标签中的模版内.称为:<标签嵌套>

三:我们一起来创建这个模版.目的是理清块与层的概念和关系.

1:用任意网页编辑器.创建一个index.html文件.里面只写以下内容.

{$SiteName}

{$Default_头部}

{$Default_中部}

{$Default_尾部}

当然前后的html,head和body内容部分你自己添加,不在本文讲述范围.

将模版保存为utf-8编码格式(大部分网页编辑器默认就是utf-8编码).

传到网站: /template/pc/default/文件夹下.

2:在标签系统里添加标签:

(顶层标签创建):

我们将最顶层设置为10,当然可以是任意数字,层数不限.你有自己的标准

什么是顶层:就是直接写到你html模版文件中的标签.最先解析,称为顶层.

一{$Default_头部}:注意这个标签模版中要套两个标签.

选项:标签层:10,客户端:电脑,模版套系:default,栏目:首页专用,登陆状态:不限制,标签类型:文本

模版头部:

模版内容:

模版尾部:

{$Default_Logo}{$Default_广告}

确定创建.

二: {$Default_中部} 注意这里面要套3个标签.

选项:同上.

模版头部:

模版内容:

模版尾部:

{$Default_首页专用_新闻}
{$Mh163k_首页房产推荐列表}
{$首页广告}

确定创建.

三:{$Default_尾部} 根据以上样式,这里的内容你试着自己写.只写几个字在模版内容里也可以

(框架层标签创建) : 可有可无.

框架层:是指给上层和下层提供衔接和嵌套关系的层.实际模版制作中.

一: {$Default_首页专用_新闻}:

选项:层:5(必须低于嵌套本标签的层数),选项其他同上.

模版头部:

模版内容:

模版尾部:

{$首页图片新闻}{$Default_新闻头条和列表}

确定创建.

二: {$Default_新闻头条和列表}:可以单独创建,也可以直接将内容写到上面标签内容中.

请自己随意创建.

(数据标签创建) :重点.

数据标签:将数据库中的数据以我们需要的形式格式提取出来展示在网页中. 一: {$Default_Logo}

选项:层数0(小于嵌套本标签的层数都可以):其他选项同上.

模版头部:留空

模版内容: {$topurl}

模版尾部:留空

确定创建.

二: {$Default_广告}

选项:层数0(小于嵌套本标签的层数都可以):其他选项同上.

模版头部:留空

模版内容:这是我的广告内容,支持任意广告代码.

模版尾部:留空

三: {$Mh163k_首页房产推荐列表}

选项:层数0(小于嵌套本标签的层数都可以):其他选项同上.

类型:内容列表,内容范围:_房产出租(出售),二级分类:出售,三级分类:所有分类.

调用内容:勾选:ID,标题,区域,面积,价格

附加条件:审核情况: 等于1

条数:10条, 50字节, 100 字节

排序方式:ID,降序.

模版头部:

确定创建.

以上内容创建好后.清空缓存.打开首页看看什么效果.

系统固定标签和通用过程.

(四)系统通用固定标签:

通用标签:

网站关键字:{$SiteKeyWord}, 网站描述: {$SiteDescription}, 网站名称:{$SiteName},网站域名:{$SiteUrl},网站LOGO图片地址:{$topurl}, 登陆用户名:{$loginname},登陆ID:{$loginuserid} 用户级别:{$loginjibie} 信息地址:{$liveurl}, 信息频道名称:{$livename}, 招聘地址:{$zpurl},招聘名称:{$zpname}, {$fcurl}, {$fcname}, {$bianmingname}, {$bianmingurl}, {$goodname}, {$goodurl}, {$shopname}, {$shopurl}, {$tuangouname}, {$tuangouurl}, {$tgname}, {$tgurl}, {$daohangname}, {$daohangurl}, {$videoname}, {$videourl}, {$articlename}, {$articleurl}, {$sitetongji}, {$jifenname}, {$daijinname}, {$SiteColor}, {$shouyecss}, {$SiteYuming}, {$topurl}, {$bbsurl},{$city} ,

{$sitetel},{$siteqq1},{$siteqq2},{$siteqqkey1},{$siteqqkey2},,{$siteqqqun}

当前位置: {$Clienttype}=模版套系

当前位置编号: {$Tempid}=对应form_common.js中data_change过程中的位置编号

{bbs整合开关 {$bbsopen} QQ整合登陆开关 {$qqiskill} 微博微信开关 {$weiboiskill} 微博地址 {$weibourl} 微信账户 {$weixinuser} 微信二维码图片 {$weixinimg}

当前模版地址:{$tplPath},输出: ../template/客户端/你的模版套系/

默认模版地址:{$Default_tplPath} 固定输出:http://你的域名/template/pc/你的模版套系/

默认模版地址主要用户调用通用js,css,jpg等全站通用文件.

如:登陆按钮图片. {$Default_tplPath}images/submit.png

将解析为: http://你的域名/template/pc/你选择的主站模版套系/ images/submit.png

系统当前时间: {$system_datetime 正则格式化}{$system_datetime MM\/dd\/yyyy HH:mm:ss}

缓存更新相对随机数: {$CacheHash} 用于经常改动静态文件后缀添加,确保每次系统缓存更新后,所有用户能获取到最新文件.

如:

(六) 数据标签的应用说明.

一:普通数据标签,直接输出实际数据:

直接使用选择的内容列名加{$列名}为数据标签.

如:{$title} 将直接输出标题内容.

2:时间数据标签,两种输出方式:

1):直接输出记录时间格式为{$dtappenddate} 输出为:2014-01-01 12:12:12长完整时间数据

2):带格式输出标签{$列名格式}.将按照你的格式输出数据(注意列名和格式之间必须只有一个空格).

如{$dtappenddate yyyy年MM月dd日HH时mm分ss秒}

将输出: 2014年01月01日12时12分12秒时间格式数据

{$dtappenddate yy年MM月dd号HH点} 将输出: 14年01月01号12点

3): {$list_num}列表列数量数据标签:输出当前内容的条数1递增.

4): {$list_id}内容列表内第一列内容数据逗号分隔集合数据.

5):时间日期做条件,条件右数据支持sql函数:如getdate()dateadd()datediff()等所有sql日期时间函数.

如:发布日期大于dateadd(day,-10,getdate()) 函数标示只搜索10天内发布

如:结束日期大于getdate() 函数表示调用未到期数据

(七):团购列表页面标签说明:

1:loop标签

PageSize=每页条数,TitleLen:标题字数RecColumn:top条数

输出:

    6条tg/list_old.html模版内容

    每页条数-RecColumn条剩余条数tg/list_old.html模版内容

2:分类标签: {$category}

3:地区标签: {$quyu}

4:快捷排序标签: {$pages} 分页: {$pages1} {$pages2}

5:分页标签: {$PageSplit}

tg/list_old.html 新标签列表:

今日推荐 {$isindex1}返回0或1

状态 {$iskill} : soldOut:卖光 jieshu 结束, buy:正常

<< 18个标志使用

前4个标志

状态标志 {$iskill1} 1到4 输出1或空

输出: 输出:

状态标志 {$k1} 1到{$k14}14 输出1或空

输出:

输出:

地区:{$chrcategory}:店铺:{$chrshop} 图片:{$chrimage},团购地址tg_{$tgid}.html

原价:{$chrmoney1},现价:{$chrmoney2}

列表页搜索表单.

标题name="keyword1"

排序规则:name=keyword

0:价格降序,1:价格升序,2:销量降序,3:销量升序,4:新单,5:折扣率底高,6:折扣高低,7:免预约,8:今日推荐

价格区间:起始价格name=keyword2 最高价格name=keyword3

分类: name=styleid 0:消费类,1:实物类,2:实物订单类,3:代金券类

团购标志使用建议:

文字

支持

不支持

css

.bzn1,.bzy{display:none;}

.bzn,.bzy1{你的控制}

图片

css

.bz1_1{支持图片}

.bz1_{display:none;}

css

.bz2_1{支持图片}

.bz2_{ display:none;}

2: {$listtg$}列表标签

(八):信息频道标签变动说明.

一:电话号码解密接口.

输出加密img显示电话号码图片.

(九)模板选择数据接口,模板列表数据接口:

1:ajax数据接口

../request.ashx?action=template&_clienttype=模板客户端0到13

可选json=和jsoncallback=参数

输出标准json格式

{“模板文件或文件夹名称”:”模板中文名称”}

/other.aspx?action=moban&_clienttype=0到13套系&mobanid=当前使用套系&PageSize

=每页显示条数

所用模板: mobanxuanze.html:列表标签: {$TplList}

列表标签模板 List_moban_Tr.htm 内容标签: {$ID} {$filepath} {$filepath_large} {$mobanname} {$checked{$ID}}

Clienttype数据:

0:电脑版主站,1:手机版主站模版,2:企业模版,3:口碑店铺模版4:新闻专题模版,5:商城店铺模版,6:团购模版

待开放模板:8:信息模板,9:职位模板,10:活动模板,11:投票选手模板,12:房产模板,13:服务机构模

(十):专用纯数据接口(客户端)参数说明:

接口地址../request.ashx?action=getdata&tempid=作用范围id&template=模板名称

模板名称为../template/data/当前套系/文件夹下的完整文件名.

其中作用范围请参阅以下:10到22110数字.

如: ../request.ashx?action=getdata&tempid=1001&template=live_index_data.json

输出数据将会调用作用范围为:客户端:数据接口模板,默认default模板,信息首页创建的标签内容.

当然你需要在live_index_data.json模板内写入相应的标签名.

数据模板可以是任意文档,如index. xml index.html index.json index.sql任意格式均可.

专用系统标签{$common$}将读取固定的../template/data/default/common.html模板文件作为通用

模板

数据接口专用采集标签:{GetHtml: Url="完整网页地址" } 将完整输出采集网页内容

作用范围数字对应:

10:首页专用 20:通用

1001:信息首页标签", "1000:信息通用标签", "1002:_大类首页通用", "1010:??交易类首页" 2001:房产首页标签", "2000:房产通用标签", "2002:_大类首页通用", "2010:??新房(楼盘)? 3001:首页(今日团购)", "3000:团购通用标签", "3010:??更多团购", "3011:??流程问题合作

001:活动首页", "4000:活动通用标签", "4002:_大类首页通用", "4110:___活动详情", "411 5001:人才首页", "5000:人才通用标签", "5002:_大类首页通用", "5010:??职位列表", "501 6001:投票首页", "6000:投票通用标签", "6010:??选手列表", "6110:___选手详情", "6111: 7001:购物首页", "7000:购物通用标签", "7010:??购物列表", "7011:??品牌列表", "7012:? 8001:店铺首页(电脑/手机)", "8000:店铺通用标签(电脑/手机)", "8010:??商家店铺列表(电9001:视频首页", "9000:视频通用标签", "9010:??视频列表", "9110:___视频播放页", "911 10001:文章/新闻首页", "10000:文章/新闻通用标签", "10002:_大类首页通用", "10010:??? 11001:网址首页", "11000:网址通用标签", "11010:网址分类列表" 12001:礼品兑换首页列表" 13001:相册首页", "13000:相册通用标签", "13010:??相册类别列表", "13111:___相册内容? 14001:黄页首页", "14000:黄页通用标签", "14002:_分类首页通用", "14010:??服务机构列? 16001:地图首页", "16000:地图通用标签", "16110:地图标注标签", "16111:地图标注调用标17001:促销首页", "17000:促销通用标签", "17110:促销卡页标签", "17111:商家动态标签", 18001:电台首页" 19001:帮助通用", "19000:帮助(网站信息)通用", "19010:网站信息", "19011:会员管理" 20001:历史上的今天"

21001:音乐首页" 22001:公告列表页","22000:公告(留言通用)","22010:留言列表","22110:公告内容页(家乡)"

(十一) https://www.wendangku.net/doc/3b18469822.html,程序登陆和验证二次开发接口

1:https://www.wendangku.net/doc/3b18469822.html, 登陆判断接口

protected void Page_Load(object sender, EventArgs e)

{

Util.Cls_SiteBase nsb = new Util.Cls_SiteBase();

nsb.GetSiteSettings(-1);

#region 前台用户登录判断

getdata getdata = new getdata();

System.Collections.Generic.IList loginstr = getdata.Login_str(bool是否二次验证);

//loginstr[0] 已经登录返回userid 未登录返回””空.(非null)

//loginstr[1] 店铺ID

//loginstr[2]用户名

//loginstr[3] 用户email

//loginstr[4] 企业名称

//loginstr[5] 用户级别

//loginstr[6]用户权限,号分隔集

#endregion

#region管理员登录和权限判断

System.Collections.Generic.IList Adminloginstr =nsb.ChkALogin(-1);

// nsb.ChkALogin(管理员功能权限值);-1为不限制

//功能权限请参阅后台管理员用户组组权限设置页

// Adminloginstr返回null未登录

// Adminloginstr[0] 管理员id

// Adminloginstr[1] 用户名

// Adminloginstr[2]真实名

// Adminloginstr[3]权限组集

#endregion

}

2:用于ajax登陆接口(用于2,3,4ajax接口均可带json=和jsoncallback参数):

请自行添加url转码后传递参数

../request.ashx?action=login&str1="+ username+"&str2="+password+"&str3="+remeber

参数说明:str1用户名str2密码str3是否记住登陆.

3:退出ajax接口:

提交地址1:"../request.ashx?action=loginout&date=" + new date();

提交地址2:" {$SiteUrl}request.ashx?action=loginout&json=1&jsoncallback=返回参数&date=" + new date();

4:用于ajax登陆验证接口

提交地址1: ”../request.ashx?action=islogin&date=” + new date();

提交地址2: ”../request.ashx?action=islogin&json=1&date=” + new date();

提交地址3: ”../request.ashx?action=islogin&json=1&jsoncallback=loginstr&date=” + new date();

1:返回|号分隔数组

2: 返回json集合

{'islogin':'1',’userid’:’2315’,’shopid’:’22’,’name’:’张三’,’jibie’:’0’,’styleid’:’2,3’,’bbsopen’:’open’,’bbslo ginurl’:’http://****’}

3:带jsoncallback= loginstr返回集合

loginstr([{'islogin':'1',’userid’:’2315’,’shopid’:’22’,’name’:’张三’,’jibie’:’普通会员’,’styleid’:’2,3’ ,’bbsopen’:’open’,’bbsloginurl’:’http://****’}]);

参数说明

islogin:0:未登陆,1:已经登陆/登陆成功,2:需要邮箱激活,3:用户需要短信激活.

Error:错误信息

bbsopen’:是否整合bbs:open

bbsloginurl’bbs同步登陆地址(当bbsopen’:open时,必须建立一个框架或过程,访问一次bbsloginurl返回地址.)

.

(十二)团购兑换平台二次开发资料:

1:兑换平台独立域名设置:后台—团购—参数配置:

增加表单:团购独立兑换平台域名前缀.name=dhost value=”{$dhost}”

注意事项:有无开启二级域名均有效,请设置:后台→二级域名→参数配置→网站根域名.

2:共用域名地址:{$SiteUrl}index.aspx?d

3:团购添加和编辑页面增加表单 name=dhuserids value=”{$dhuserids}”

表单名称:设置兑换权限会员为(营业员),如果选择有活动商家关联,商家默认具有兑换权限.

数据条件逗号分隔用户id如: 326,5382

3:页面模板: pc\套系\member\tgduihuan.html 和 wap\套系\member\tgduihuan.html

可用标签: 系统标签,{$chrname}:用户名. {$chrtruename}:企业名称,

4:ajax兑换接口:

地址{$SiteUrl}request.ashx?action= tgduihuan&chrcode=消费券号

可带&json=1&jsoncallback=参数

返回值

islogin:兑换状态0失败 1成功

error:失败原因:

message:兑换成功信息.

record:1条兑换查询信息.

5:ajax兑换查询接口:

地址{$SiteUrl}request.ashx?action= tgrecord

可选查询参数

&startdate=兑换起始时间&enddate=兑换结束时间&tgid=团购id&num=显示条数

&json=1&jsoncallback=参数

返回值

islogin:查询状态0失败 1成功

error:失败原因:

message:查询成功信息.

record:兑换记录查询结果.

6:导出兑换记录xls报表超链接地址:

地址{$SiteUrl}request.ashx?action= tgrecord&xls=1

可选查询参数

&startdate=兑换起始时间&enddate=兑换结束时间

返回xls报表文件下载

(十三)数据接口:

一:根据企业名称搜索企业网站ID和企业名称键值对,返回20条记录.权限范围:不限request.ashx?action=qiyeidname&qiyename=企业名称&jsoncallback=

二:根据企业名称搜索企业用户ID和企业名称键值对,返回20条记录,权限范围:后台. request.ashx?action=qiyeusername&qiyename=企业名称&jsoncallback=

三:根据企业ID集返回该企业所有招聘信息数组.权限:不限.

request.ashx?action=qiyejob &id=企业逗号分隔ID集&jsoncallback=

四:人才行业,岗位分类.权限:不限.

request.ashx?action=jobcategory&id=可选行业id&jsoncallback=

行业id为空或0时返回行业数据

五:图集分页接口.权限:不限.

request.ashx?action=photopage& Colname=分类PageNo=页数&jsoncallback=

可选参数: Colname=图集分类&key=排序方式1:最新,2:推荐& PageSize=每页条数:默认20条

&strlen=图集介绍截取长度默认220字节&titleLen=标题截取长度默认100

(十四) 职位搜索表单统一

页面地址../job/zhiwei.html

表单支持GET,POST

表单名: 值意义返回页面标签

name=s_gangwei 岗位ID {$s_gangwei}

name=s_hangye 行业ID {$s_hangye}

name=keyword 职位名关键字{$keyword} url转码后{$keywordcode}

name=key 排序方式0空,时间,1:点击量(关注),2:关注(时间倒序),3:热门,4:紧急,5:时间,6:推荐{$key}

name=s_didian 工作地点ID(调用区域ID) {$s_didian}

name=s_xinzhi 职位性质ID {$s_xinzhi}

name=s_date 发布(刷新)间隔天{$s_date}

name=s_qiyexingzhi 企业性质ID {$s_qiyexingzhi}

name=s_daiyu 待遇ID {$s_daiyu}

标签行业名:{$s_hangyechrcategory}

标签岗位名:{$s_gangweichrcategory}

搜索框:

{$searchhangye} 行业选择

{$searchgangwei} 岗位选择

(十五) 专题团购制作指南.

1:文件规划:将tg\zhuanti.aspx复制到任意位置并可以改名.如复制到\chunjie\miaosha.aspx 访问地址就是: 域名\chunjie\miaosha.aspx

2:参数说明 ?m=模板名称前缀.

默认专题模板为template\zhuanti\tg\zhuanti.html

如?m=chunjie 模板就是template\zhuanti\tg\chunjie.html

3:标签创建位置:团购频道 专题团购

dz模板开发教程

Discuz!模板二次开发的模板语法介绍: 相信大多数朋友都看过discuz的模板文件的代码了。不同于传统的静态html代码,dz的静态模板可以说是动态化得模板文件了。这里集合了,一些特有的php变量和逻辑判断。下面我将为大家整理一下常用的dz模板二次开发规范,希望有助于大家更好的制作模板。DZ的模板引擎原理是通过特殊的Discuz!模板标签来完成特定的循环和判断的。它不同于PHP本身自带的脚本语言。大家可能有很多人写过PHP的程序,也都使用过类似if($abc == 1) {} else {}的判断。Discuz!模板引擎会将Discuz!模板标签中的关键字替换成php自身的脚本语句,然后存入缓存目录forumdata/templates目录中生成一个可供PHP程序包含和调用的模板文件。 那在DZ的模板引擎中我们该如何使用Discuz!模板标签呢? 下面给大家列举DZ模板引擎中常见、常用的模板语句: 一、直接输出变量:{$abc}或{echo $abc} 二、输出数组中某个变量:{$arr[0]} 三、IF判断语句: 我abc小于1 我abc为1 我abc大于1 四、Loop循环语句: 这里是{$val} 上面这段loop语句,DZ会将其转换成php自身的循环语句: If(is_array($abc)) { Foreach($abc AS $key => $val) { } } 五、在模版文件中使用PHP语句:{eval $abc = 1;}注意:这里必须带”;”结尾。

六、在本模板中引用其他的模板:如我们要包含头部模板文件(header.htm)可以这样写:{subtemplate header} 在模版中使用语言包中的中文语句:{lang xxxxx},在这里xxxxx就是语言包中任意一个数组的键值。 如:templates/default/https://www.wendangku.net/doc/3b18469822.html,ng.php(语言包)内有下面的数组 $language = array ( 'discuz_lang' => 'templates', 'click_here' => '点击这里', 'ban_member' => '禁止', 'input_invalid' => '填写无效', 'title_none' => '无标题', 'title' => '标题', } 大家可以使用{lang title},这样在模板输出的时候则会显示”标题”两个字。 当你了解了Discuz!模板开发语法之后,我们就一起来熟悉一下,常用的数据库表含义,与主题表中常用字段的含义,这样方便你使用sql语句灵活调用个性的内容,如:按会员性别调用头像,在首页右侧边栏调用女性会员头像等等这样各个性的需求,在此我们丛老师为我们讲解常用数据库表、字段及sql语句。 数据常用的帖子表有:cdb_threads,cdb_posts 我们仅以了解数据库中该如何根据结构来获得自己需要的信息。 用户名和密码均为root。也可以查看安装后的readme.txt说明文件 接着我们还是来围绕今天的题目,来知道哪些数据表和数据字段对调用“帖子列表”有帮助。 打开phpmyadmin,找到现在你们本机用于演示的数据库。如图: cdb_threads表红色标记的,则是discuz!中最重要的主题列表。,回复主题在哪个表呢? 其实,回复帖子的库文件是:cdb_posts。我们在这里先只使用cdb_thread,以数据库的方式获取,最新的帖子列表数据和第一讲标签调用有区别,大家一起跟我做。 cdb_threads中有几个重要的字段: tid (大家很熟悉了),每个主题唯一的一个帖子ID fid(所在论坛版块的ID号)

十年相伴 共创经典 Discuz!系列经典产品回顾

《站长》杂志第28期内容推介 十年相伴共创经典Discuz!系列经典产品回顾 站长朋友们,是否还记得Discuz! 官网那些5年前的老ID旧面孔?是否还记得曾经的Discuz! 1.0 、Discuz! 1.0 和Discuz! 5.5“长”得什么模样?在过去的十年里,senz在站长的陪伴下一路走来,推出了数款经典产品,成为社区动力,引领社区潮流发展。在即将迎来senz十周年之际,《站长》杂志特别回首过去十年来的数款经典Discuz! 产品,以及那些始终陪伴左右的站长朋友,谨以对更多陪伴Discuz! 、支持Discuz! 的站长们表示由衷的感激。 Discuz! 1.0 ——Discuz! 起点站 大C在开发Discuz! 1.0 的时候,一定不会想到之后商业化的Discuz! 1.0 、免费开源的Discuz! 4.0 、以及现在“跨界融合”的Discuz! X 系列;Discuz! 1.0 的各项功能、模板也可

能是Discuz! 系列中最简陋的,最朴素的,但没有它,也就没有后来的数个经典产品。所以,Discuz! 1.0 就像是Discuz! 系类产品的“起点站”和“加油站”一样,不断的激励着Discuz! 的后续产品一步步的改进、创新,引领社区发展潮流。 许多的草根站长,不也是这样一步步发展起来的吗?许多业已取得成功的站长,在初建社区的时候,也未曾想过能取得今天的人气与盈利,只是抱着许三多“不抛弃、不放弃”的信念从小做大,根据市场需求逐步改进自己的产品,一步步走向了成功。这种“从小到大”、“坚持不放弃”、“以市场为导向”的理念不仅是说Discuz! 1.0 ,也同样适用于社区。 Discuz! 2.0 ——商业化

市场部网络推广部组织架构及岗位职责

组织架构及岗位职责 一、部门职能 ◎一切工作以挖掘客户资源为核心,为公司的业务开展作支撑; ◎根据公司的发展规划,制定公司线上业务平台的开发计划和运营推广计划,并完成实施; ◎负责公司技术开发、运营以及公司业务平台产品研发和信息、功能的完善; ◎公司外部合作平台的开发和维护;公司网络资源和网络媒体的整合以及清除网络负面消息; ◎网络产品的开发和运营;服务器和数据库的安全保障;以及公司各项业务的网络(CRM等工作支撑)。 二、组织架构 三、市场部人员岗位职责 市场部主管 岗位职责: 1、结合公司发展策略,制订市场推广的各阶段目标与实施计划;

3、负责网站栏目的具体规划,确定网站各板块栏目的运营目标和机制,制定出具体的网站运营项目工作计划,并负责实施; 4、通过数据分析、用户调研等手段了解用户需求,对网站栏目改进提出修改意见; 5、根据客户的需求和市场发展,不断策划出适合公司商业发展的产品; 6、负责网站产品项目技术开发计划的制订,实施,监督及效果反馈; 7、建立运营部门各项管理制度、工作规范,带领团队完成部门目标; 8、负责公司网站、手机平台等网络产品的运营管理及对外合作; 9、负责公司网站内容、网络广告的审核和监督; 10、负责做好部门内部员工能力的开发、培养;以及团队建设和和绩效管理工作。 任职资格: 1、具备丰富的互联网行业的从业经验,三年以上网站策划/运营管理工作经验。 2、熟悉网站技术架构与网络安全技术;

4、有较强的文字功底,善于沟通。具有团队合作精神,能够承担较大的工作压力 5、有项目团队管理经验,有社区类、电子商务类网站开发运营经验。 SEM组长 岗位职责: 1、负责公司搜索引擎(百度,360,Google等。、竞价账户及DSP(头条,抖音,YouTube,Facebook 等)推广平台的搭建和推广和优化;(有Google,YouTube,Facebook推广经验优先考虑); 2、负责公司竞价推广,制定有效可行的推广计划,并进行具体分配执行,对推广效果进行监控和优化; 3、利用相关工具跟踪分析投放效果,根据关键词广告的表现,通过分析ROI、转化率对关键词广告进行优化; 4、收集、研究并监控竞争对手的各种网络推广手段和营销方案及其变化,及时进行方案优化和调整; 5、多账户、多渠道合理布局,根据运营要求与实时推广效果对账户进行优化诊断,提高账户整体质量,灵活控制推广力度和资金投入,最大限度提高投入产出比; 6、制定工作流程并执行,对SEM每周/月任务指标负责; 7、每周完成关键词计划分析报告,并做总结优化和改进方案;分析总结上月工作情况并制定下月工作目标、推广预算与工作计划;

phpcms_v9二次开发手册

PHPCMS二次开发教程 文件目录结构 根目录 | – api 接口文件目录 | – caches 缓存文件目录 | – configs 系统配置文件目录 | – caches_* 系统缓存目录 | – phpcms phpcms框架主目录 | – languages 框架语言包目录 | – libs 框架主类库、主函数库目录 | – model 框架数据库模型目录 | – modules 框架模块目录 | – templates 框架系统模板目录 | – phpsso_server phpsso主目录 | – statics 系统附件包 | – css 系统css包 | – images 系统图片包 | – js 系统js包 | – uploadfile 网站附件目录 | – admin.php 后台管理入口 | – index.php 程序主入口 | – crossdomain.xml FLASH跨域传输文件 | – robots.txt 搜索引擎蜘蛛限制配置文件 | – favicon.ico 系统icon图标

PHPCMS V9 核心文件说明 模块与控制器 模块: phpcms v9框架中的模块,位于phpcms/modules目录中每一个目录称之为一个模块。即url访问中的m。 访问content模块示例:https://www.wendangku.net/doc/3b18469822.html,/index.php?m=content 控制器: phpcms v9的控制器就是模块的类文件,位于phpcms/modules/模块/目录下面。类名成就是文件名+.php,例如一个名为abc的控制器,那么他的命名为abc.php即可。控制器类默认继承系统的函数库,可以直接使用。控制器类的类名称与控制器文件名必须相同。如果您创建了一个abc.php在 test模块下,那么我们在浏览器里面输入URL:https://www.wendangku.net/doc/3b18469822.html,/index.php?m=test& c=abc 二次开发技巧 如果要对已存在的控制器进行二次开发,为了方便升级不建议直接对内核文件直接修改该,您可以通过“MY_*.php”的形式进行二次开发。 例如您要对改phpcms/mood/index.php进行二次开发。您可以在与index.php同级的目录下建立"MY_index.php"

discuz X2二次开发帮助文档

相信有不少人热衷于基于修改原有系统文件所做的插件,当然了解程序文件功能是最重要的,下面我把Discuz! X2.0主要的程序文件功能说一下。我只是整理,不是自己原创编辑的,所有权归原创作者所有哦。 Tips: Q:针对说明的文件是? A:我只基于原版文件对upload目录中基本的程序文件(php,htm,js,除了极少数无关紧要的)进行解释,其余文件(如图片文件),一般不做说明 Q:某些目录下空白的index.htm是用来做什么的? A:用来防止列目录的 Q:文件名颜色和标识的意义是? A:粗体表示这个文件比较重要,除非你非常了解其功能,否则修改错误会导致全站瘫痪;斜体表示这个文件已被加密,一般情况下修改没有意义;下划线表示这个文件一般99.99%的修改是用不上的,了解即可 绿色的是函数库文件,蓝色的是常量调用文件,红色的是系统全局核心文件 Q:文件名命名有什么特别规律吗? A:有的,一般inc的是调用文件,func是函数库文件,class是库文件,lng的是语言包文件,了解这些后缀能快速掌握文件功能。 Q:我看了你的帖子,可是我还是看不懂文件内是什么意思啊? A:这个嘛,还是要有一定基础了,一般掌握SQL,PHP和Htm你就可以去改文件做你要的功能了,这个不是我的任务了哦。一般来说,如果随便指个地方,你能在1分钟内说出大概位置及所在的文件,那么你基本就算合格了。不过我个人认为最重要的还是多改多读,在实践中提高自己的能力 下面开始了,请看你的upload目录里面的文件,表述的格式依次为文件名,功能描述等等 先从根目录开始,根目录文件一般都是入口,即执行具体功能的代码一般不在这些文件中,而是在其调用的文件中 admin.php 系统站点管理入口文件 api.php Discuz!合作应用入口文件(例如漫游、支付宝什么的都走这里) connect.php QQ互联入口文件 cp.php 应用入口文件 crossdomain.xml 数据交互文件,如果在里面定义其它站点的地址,那么这两个不同站点就可以交互数据 favicon.ico图标文件,显示在浏览器的标题栏 forum.php 论坛入口文件 group.php 群组入口文件

CATIA二次开发文件_VB

CATIA二次开发文件 第一课:CATIA V5自动化及脚本语言结构内容列表: CATIAV5自动化及脚本语言介绍 VB、VBScript、VBA之间的区别 宏的兼容性、结构及文件 进程中的宏 2.1运行一个宏 2.2在工具栏上添加一个宏 外进程的编程 3.1 使用VBA或VB 运行外进程 例子:从Excel里导出螺钉 3.2使用Windows Scripting Host运行外进程 3.2.1Windows Scripting Host 下的VBScript 例子:“BoltVBScript.vbs” 3.2.2Windows Scripting Host 下的JavaScript 例子:“BoltJavaScript.js” 3.3用HTML运行外进程 3.3.1用VBScript在HTML里运行外进程 例子:“BoltVBScript.html” 3.3.2用JavaScript在HTML里运行外进程 例子:“BoltJavaScript.html”

1.C ATIA自动化及脚本语言概述 通用在Unix和NT平台上 无论是在NT平台还是Unix平台上,脚本语言允许你使用宏以一个非常简单的方式来对CA TIA V5进行编程。 CA TIA V5使用了NT平台下的VB脚本和Unix平台下的BASIC脚本中相同的部分,所以我们在两个平台下可以运行相同的宏。 在NT平台下 自动化允许CATIA与其他程序共享对象,如EXCEL,WORD,VISUAL BASIC。 CA TIA可以使用WORD/EXCEL对象,反之也相同。 在UNIX平台下 将来的CATIA的版本里,CATIA将允许同Java共享自己的对象,这将为Unix平台和NT平台提供完整的兼容性。 CATIA V5 自动化:概述(仅限NT平台) 自动化允许在不同的进程之间通讯 COM:(对象组件模型):COM是微软公司提出的目的在不同程序中共享对象标准。Automation:Automation是一种微软公司的技术,目的是在开发环境里使用COM对象ActiveX组件是一种微软标准,目的是在开发环境里共享不同程序的对象。 OLE:(对象链接及嵌入)意味着一个文件可以被另外的一个程序的文件链接。这种链接及嵌入的对象可以被其他的程序在编辑区编辑。 Visual Basic ,VBA,VBScript之间的区别 Visual Basic(Visual Basic专业版):VB是个完全的版本。 1.可以编制独立的程序。 2.也可以创建ActiveX和程序服务器。 3.可以被编译。 4. VB提供了自己的文档——《在线帮助》 VBA(Visual Basic for Application):VBA是VB的一个子集。 1. VBA是程序中的主机,就象Word,Excel。 2.它提供了一个带有编辑器、除错器、帮助、对象浏览器、完成器的完整的开发环境。3.利用它的Tools-Reference菜单可以声明使用的对象库。这在完成和对象浏览器之间建立了一个通道。 VBScript(Visual Basic Script):VBScript是VB的一个子集。

Discuz教程

Discuz教程 插件制作的基本思路是:(初学者适用) 1.形成插件思路 2.制作插件界面 3.构架程序模块 4.搭建存储数据 5.填充功能语句 6.检查应用错误 7.完善插件功能 前言:为方便互联网数万Discuz!爱好者,更加深入了解Discuz!软件,本人在熟悉Discuz!过程中,顺便将个人经验写给大家。本贴内容由本人定期更新。本贴只介绍Discuz!中部分技术点,本贴紧属个人观点,不足之处,请各位多多指教,在下先此谢过!。“Discuz!”在下文中简称“DZ”。要弄DZ二次开发,必须至少具备如下技能:1)能够理很好理解MVC构架的原理(虽然DZ不是MVC架构的) 2)扎实的PHP基础,熟悉结构化程序,OOP程序的写法及应用 3)熟悉MYSQL就用,掌握SQL语言,懂SQL优化者更佳 4)熟悉使用Discuz!的各项功能 一)Discuz!的文件系统目录 注:想搞DZ开发,就得弄懂DZ中每个文件的功能。 a) Admin:后台管理功能模块 b) Api:DZ系统与其它系统之间接口程序 c) Archiver:DZ中,用以搜索引擎优化的无图版 d) Attachments:DZ中,用户上传附件的存放目录 e) Customavatars:DZ中,用户自定义头像的目录 f) Forumdata:DZ缓存数据的存放目录 g) Images:DZ模板中的图片存放目录 h) Include:DZ常用函数库,基本功能模块目录 i) Ipdata:DZ统计IP来路用的数据 j) Plugins:DZ插件信息的存放目录 k) Templates:DZ模板文件的存放目录 l) Wap:DZ无线,Wap程序处理目录 二)必须记熟Discuz!数据库设计的每个表的功能,每个表中每个字段的功能。 关于DZ数据库设计文档,请参阅DZ相关的项目文档(请从本贴附件中下载) 三)Discuz!的流程控制 a) 后台流程控:DZ后台所有的功能,均需要注册到admincp.php文件,每个功能都至少有一个或一个以上的Action(动作),在admincp.php中,可以定义Action的执行权限,分别为:“admin==1”管理员,或“admin==2 || admin==3”超级版主和版主,每个Action对应一个脚本文件,脚本文件的命名为action.inc.php(*.inc.php),并存放在admin目录下,如执行:admincp.php?action=dodo,相当于执行admin目录下的dodo.inc.php文件 b) 前台流程控制:前台的流程控制比较简单:流程是自由的,如: 首页:index.php 会员注册:register.php; 会员登录:logging.php 发贴程序:post.php 会员信息:member.php 论坛内容:forumdisplay.php 查看贴子:member.php …大部分功能,此处不一一列出… c) DZ根目下的config.inc.php属于整个DZ系统的配置文件 四)Discuz!的数据处理过程 a) DZ对mysql的数据库操作处理全部封装在dbstuff(db_mysql.class.php)类中 b) 所在的外部数据均通过“daddslashes()”初步过滤,然后再过滤,再根据需要处理 五)Discuz!的显示控制(网站多样式风格输出) a) 显示层就是大家通常所看到的网站风格了。DZ中每套风络分别在templates及images下对应一个风格文件的存放目录。网站风格的制作,请参阅详细的DZ风格制作文档 b) DZ网站风格文件处理的原理:其实很简单,DZ使用template.func.php中的parse_template()以PHP正则运算把htm模文件中的模板标签,转换成了PHP代码,并根据styleid保存在forumdata/templates下,这个有点像Smarty 中的技术。 六)DZ中的语言处理 a) DZ前台及后台中、英语言的实现,均是把语句定义成了语变量,然后在模板输入,语句变量的赋值,均放在模板目录中的*.lang.php文件中,DZ在生成网站风格时就加载了这相应的语言包。 七)DZ如何处理用户信息(存取、计算、更新过程)

Discuz数据表详解

Discuz数据表详解方便二次开发 Discuz数据表详解,方便二次开发,有时候还是感觉直接改动数据库比较方便一些Discuz默认库的53个数据表 cdb_access (用户权限表) uid 用户id fid 论坛id allowview 允许浏览 allowpost 允许发新帖 allowreply 允许回复 allowgetattach 允许下载附件 allowpostattach 允许上传附件 cdb_adminactions 关联用户组 admingid 管理组id disabledactions 关联后的权限 cdb_admingroups 管理组权限设置(3条)…………………表1 admingid 管理组id alloweditpost 允许编辑帖子 alloweditpoll 允许编辑投票 allowstickthread 允许固定主题 allowmodpost 允许编辑帖子 allowdelpost 允许删除帖子 allowmassprune 允许批量删除帖子 allowrefund 允许强制退款

allowcensorword 允许过滤词语 allowviewip 允许查看用户IP信息 allowbanip 允许禁止IP allowedituser 允许编辑用户 allowmoduser 允许审核用户 allowbanuser 允许禁止用户访问 allowpostannounce 允许发布公告 allowviewlog 允许查看版主管理记录和用户评分记录disablepostctrl 发贴不受***(不受灌水预防和最大字数等)allowviewrealname 允许查看真实名字 cdb_adminnotes (后台留言表) id 后台留言id admin 留言人 access 阅读权限 adminid 管理组id dateline 发表时间 expiration 过期时间 message 留言内容 cdb_adminsessions 管理记录(0条) uid 用户id ip ip dateline 时间 errorcount 错误次数 cdb_advertisements 后台广告管理…………………………..表3

二次开发文档

Jspxcms无侵入式插件开发(二次开发)教程之一:概述 Jspxcms支持无侵入式插件和二次开发,无需修改系统原有代码,即可无缝整合Entity、Service、Controller、功能菜单、权限、标签、国际化等功能。 系统中“插件--简历管理”就是以这种方式实现的,下面就以“简历管理”讲解Jspxcms插件和二次开发的方法。 本帖隐藏的内容需要回复才可以浏览 配置文件位置:/WEB-INF/conf/plugin。 所有的配置文件都必须在这个目录,在该目录下的配置文件会自动加载。在该目录下新建自己的文件夹,可以是任何名字,如:abc、novel等,本例为plug。即/WEB-INF/conf/plugin/plug 配置文件说明 application.properties:功能菜单、权限、国际化、Entity都与这个文件相关。 context-dao.xml:Dao的加载。 context-service.xml:Service的加载。 controller-back.xml:后台Controller的加载。 controller-fore.xml:前台Controller的加载。 context-directive.xml:标签的加载。 其他与插件开发相关的文件目录 /WEB-INF/messages/plugin/plug:后台国际化文件位置 /WEB-INF/messages/plugin/plugfore:前台国际化文件位置 /WEB-INF/views/plug:后台jsp文件位置 /files/1/bluewise/plug_resume.html:插件的前台模版 插件源代码包名:com.jspxcms.plug Jspxcms无侵入式插件开发(二次开发)教程之二:菜单与权限 本帖隐藏的内容需要回复才可以浏览 菜单和权限配置文件:/WEB-INF/conf/plugin/plug/application.properties 一级菜单配置(分号为分割符) 1.menu.650=navigation.plug;nav.do?menuId=650;nav_plug 复制代码 650:是后台导航一级菜单的编号,编号大小决定菜单的前后位置。其值可以根据需要调整,如330、970,但不要与系统菜单或其他插件菜单重复。系统菜单通常为menu.100,menu.200,menu.600等,系统菜单定义文件在 /WEB-INF/conf/application.properties navigation.plug:菜单名称。这里使用了国际化,也可以直接用中文,比如“我的插件”。 nav.do?menuId=650:菜单链接地址。其中650需与前面的值一样。

完美去除discuz x2底部版权和去掉头部

完美去除discuz x2底部版权和去掉头部“powered by discuz!” (慎用) discuz x2自发布以来很多网友希望能够去掉discuz版权,其实做二次开发代码也要考虑discuz既然开放给大家使用了,大家也厚道一点,起码保留一下版权,这是尊重知识产权的基本原则吧。站在网友的立场上本人放出详细去discuz版权的教程,也可以说是完美去版权了。最后提醒大家“慎用!”如有网友侵权引起纠纷,与本人无关,我只是站在技术角度去二次开发。谢谢配合! 一、去除头部版权 在原来的discuz X2版本中,标题中去掉“Powered by Discuz!”版权标识很容易,只需要修改模板文件的头部公用文件,将“Powered by Discuz!”这一行字去掉即可。 但是discuz X2 似乎对这点有所防备,把-Powered by Discuz!中的-放在了变量里,所以删除后,标题一句话结束后会有一个小-尾巴,对搜索引擎很不友好,所以也有一个好的办法完美解决,即: 打开\template\default\common\header_common.htm文件,找到<!–{if !empty($navtitle)}–>$navtitle –<!–{/if}–><!–{if empty($nobbname)}–> $_G['setting']['bbname']-<!–{/if}–>Powered by Discuz! 将其中的“Powered By Discuz!”字串改为“{lang secondtitle}”。 再打开source/language/lang_template.php。在变量的最后,也就是整个数组的目录后按以前的格式,加上“‘secondtitle’=> ‘你的论坛名称!”,”。 更新缓存即可。 二、去除底部的版本 打开template\default\common,找到footer.htm文件,用deamweaver打开,点击编辑,再点击查找和替换powerd by,知道相应的位置把底部版权的相应内容改了就ok了,注意修改下面红色标记部分

{lang close}

{$_G['cache']['focus']['title']}{lang focus_hottopics}

ZWCAD二次开发文档简易指南

一.概述 (2) 二.使用SDS进行二次开发 (2) SDS和ADS接口的主要差异 (2) 编译SDS应用程序 (4) 三.使用AUTOLISP进行开发 (4) 四.使用VBA/VB进行开发 (5) 五.ZWCAD的定制 (5) 屏幕菜单及其定制 (5) I MAGE菜单(图标菜单)的定制 (7) PROFILE的定制 (9) ZWCAD.LSP和ZWCAD.SDS文件的作用和定制 (10) 别名的定制 (11) 其他定制 (11)

(内部参考) 一.概述 在zwcad上可以通过二次开发来定制和扩展zwcad的功能.当前的zwcad提供AutoLISP,SDS以及Visual Basic for Applications(VBA,COM)开发包进行二次开发.在zwcad上,你也可以使用许多原来在autocad平台上开发的应用程序.例如使用autolisp编制的程序可以在几乎不用修改的情况下移植到zwcad平台.Zwcad还完整支持AutoCAD Dialog Control(DCL)语言,不需修改.目前的zwcad还不支持Object ARX,DBX. 二.使用SDS进行二次开发 SDS是一个和ADS?(AutoCAD?Development System)开发包相兼容的C/C++语言接口.大部分ads应用程序经过再编译可以直接应用于zwcad。中望建筑就是用sds sdk开发的。下面所述内容均以ads开发包为比较对象,以ads开发程序员为讲解对象.具体的sds函数说明请参考帮助文档. SDS和ADS接口的主要差异 SDS和ADS的接口差异可以直接从sds.h和ads.h这两个头文件的比较得出.主要差异如下. 1.Sds开发包的接口函数以sds_为前缀. Ads开发包的接口函数主要以ads_,acad_,and acrx_等为前缀. 在sds.h中提供了移植ads用的宏 例如#define ads_entdel sds_entdel 这样只需要在ads应用程序源代码中将#include“ads.h”以#include “sds.h”替换,并将要链接的库文件改为sds.lib编译链接即可完成从ads到sds的移植. 2.sds开发包主要扩展的函数 #if defined(_WINDOWS_) HDC*sds_getviewhdc(void); int sds_getrgbvalue(int nColor);RGB HPALETTE sds_getpalette(void); HWND sds_getviewhwnd(void); HWND sds_getmainhwnd(void); int sds_drawLinePattern(HDC h_dc,RECT rect,struct sds_resbuf*lineParam);

Discuz! 道具系统道具开发文档

Discuz!道具系统采用独立的php文件的道具结构,每个道具拥有一个单独的php文件,做为这个道具运行文件,用户可以自行编写道具文件制作属于自己论坛的道具。下面具体介绍一下相关机制和开发方法 1、道具的组成 每个道具由两部分组成,php文件和图片文件。 php文件存放在论坛include/magic目录下,命名规范为magic_inc_道具名称.php文件。图片文件存放在images/magics目录下,命名规范为道具唯一标识(小写).gif 注:其中道具名称由任意英文字母组成,道具唯一标识是在添加的时候确定的,此标识唯一,最长为3个大写英文字母 道具图片不用多说就是gif文件,下面我具体说说php文件编写规范 2、道具php文件编写详解 我们以一个道具php文件(magic_inc_close.php)为例 1.

discuz文件目录及文件总结

Discuz文件目录及文件功能总结 先从根目录开始,根目录文件一般都是入口,即执行具体功能的代码一般不在这些文件中,而是在其调用的文件中 ◆admin.php 后台管理入口文件 ◆api.php Discuz!合作应用入口文件(例如漫游、支付宝等) ◆connect.php QQ互联入口文件 ◆cp.php应用入口文件 ◆crossdomain.xml 数据交互文件,如果在里面定义其它站点的地 址,那么这两个不同站点就可以交互数据 ◆favicon.ico 图标文件,显示在浏览器的标题栏 ◆forum.php 论坛入口文件 ◆group.php 群组入口文件 ◆home.php 家园入口文件 ◆index.php 门户入口文件,功能与portal.php基本相同 ◆member.php 用户信息入口文件 ◆misc.php 网站用户常用操作入口文件,例如像评分、收藏等功能 都是走这个文件的 ◆plugin.php 插件入口文件 ◆portal.php 门户入口文件 ◆robots.txt 在这个文件中加上具体的地址,可以防止被搜索蜘蛛检 索到 ◆search.php 搜索功能入口程序 ◆userapp.php 用户应用入口程序 API目录中的文件主要是和Discuz!进行合作的商家的应用程序,一般不要也无需修改 ●api ┄┄┄外部接口 ?addons ?connect ┄┄┄腾讯互联 connect.php ┄┄┄ like.php ┄┄┄ server.php ┄┄┄ ?db ┄┄┄UCenter数据库备份接口 ?google ┄┄┄Google引擎使用 ?javascript ┄┄┄数据和广告的 JS调用 ?manyou ┄┄┄manyou应用及搜索等相关服务

phpcms_v9二次开发手册

PHPCMS二次开发教程 PHPCMS二次开发教程 (1) 文件目录结构 (2) PHPCMS V9 核心文件说明 (3) PHPCMS框架入口文件: (4) PHPCMS V9 二次开发 (7) 创建模块控制器类 (9) v9 二次开发之构建模块全过程 (11) PC标签使用说明 (18) PC标签保留参数 (20) get标签 (21) 内容模块 (22) PHPCMS v9.1.7整合discuz X2 的解决办法 (28)

文件目录结构 根目录 | – api 接口文件目录 | – caches 缓存文件目录 | – configs 系统配置文件目录 | – caches_* 系统缓存目录 | – phpcms phpcms框架主目录 | – languages 框架语言包目录 | – libs 框架主类库、主函数库目录 | – model 框架数据库模型目录 | – modules 框架模块目录 | – templates 框架系统模板目录 | – phpsso_server phpsso主目录 | – statics 系统附件包 | – css 系统css包 | – images 系统图片包 | – js 系统js包 | – uploadfile 网站附件目录 | – admin.php 后台管理入口 | – index.php 程序主入口 | – crossdomain.xml FLASH跨域传输文件| – robots.txt 搜索引擎蜘蛛限制配置文件| – favicon.ico 系统icon图标

PHPCMS V9 核心文件说明 模块与控制器 模块: phpcms v9框架中的模块,位于phpcms/modules目录中每一个目录称之为一个模块。即url访问中的m。 访问content模块示例:https://www.wendangku.net/doc/3b18469822.html,/index.php?m=content 控制器: phpcms v9的控制器就是模块的类文件,位于phpcms/modules/模块/目录下面。类名成就是文件名+.php,例如一个名为abc的控制器,那么他的命名为abc.php即可。控制器类默认继承系统的函数库,可以直接使用。控制器类的类名称与控制器文件名必须相同。如果您创建了一个abc.php在 test模块下,那么我们在浏览器里面输入URL:https://www.wendangku.net/doc/3b18469822.html,/index.php?m=test& c=abc 二次开发技巧 如果要对已存在的控制器进行二次开发,为了方便升级不建议直接对内核文件直接修改该,您可以通过“MY_*.php”的形式进行二次开发。 例如您要对改phpcms/mood/index.php进行二次开发。您可以在与index.php同级的目录下建立"MY_index.php"

二次开发培训文档

二次开发培训文档 1、ECOLOGY系统框架结构 1、主要的程序结构 Ecology Classbean 存放编译后的CLASS文件 js 系统中使用的JAVASCRIPT和VBSCRIPT脚本 Css 系统中JSP页面使用的样式 Images Images_face Images_frame 系统中使用的图片的存放目录 Crm . . Workflow 该功能分文件夹存放每个功能的文件 WEB-INF Prop 系统配置文件存放 Service 系统的接口配置文件的存放 2、说明一个JSP页面,一个JAVA程序的基本组成,如何阅读JSP 页面 1、一个jsp页面通常需要包含什么内容 2、如何阅读一个JSP页面 由于ECOLOGY系统支持多语言,因此在JSP页面上一般不出现 中文,全部使用标签的形式来显示中文: 比如:在IE上显示“姓名”那么在JSP页面中将通过 <%=SystemEnv.getHtmlLabelName(413,user.getLanguage())%>这 样的形式来表示,其中的数字413就是表示姓名,同时可以通 过“select labelname from htmllabelinfo where indexid=413 and languageid=7”来获取到“姓名”这个显示名称,其中languageid=7 表示中文显示名称,languageid=8表示英文显示名称. 3、JAVA程序的基本组成 在ECOLOGY中开发JAVA程序建议继承weaver.general. BaseBean,在BaseBean中主要封装了两个方法:写日志文件,获 取配置文件中的参数值。

CAD二次开发手册

VBA 开发手册

第一章 VBA 入门 了解嵌入和全局 VBA 工程 AutoCAD VBA 工程是代码模块、类模块和窗体的集合,它们组合起来以执行给予的功能。工程可保存在 AutoCAD 图形中,或作为独立的文件保存。 嵌入工程是保存在 AutoCAD 图形中。当包含有这些工程的图形中 AutoCAD 打开时,他们可以自动地装载,这种方法可以很方便地分发工程给用户。嵌入工程也有它的极限,它不能打开或关闭 AutoCAD 图形,那是由于他们的函数只存在于工程所在的文档中。使用嵌入工程不需要在运行程序之前查找并装载工程文件。举个含有嵌入工程的图形的例子,当图形打开时,一个时间日志被触发。通过这样一个宏的应用可以登记并记录用户在该图形上所花费的时间。这时用户不必去记住在打开图形之前装载工程,这就是自动操作的一个很好的例子。 全局工程保存在独立的文件中,它更加通用,因为他们能在 AutoCAD 图形中运行,也能打开、关闭 AutoCAD 图形,但它在图形打开时不能自动装载。用户必须知道他们所需要的宏包含在哪个工程文件中。然而,全局工程非常容易与其它使用者共享,它可以将通用的宏做为很好的库而存在。举个例子,你保存在一个工程文件中的宏是有关多个图形的材料清单。这个宏可以在工作周期的末期由管理员运行,这样就可以收集到所有图形的信息。 在特定的时间,用户可以在同个 AutoCAD 进程中同时装载嵌入工程和全局工程。 AutoCAD VBA 工程与 Visual Basic 工程在二进制结构上是不兼容的。然而,其中的窗体、模块和类可以通过在 VBA IDE 环境中使用输入和输出 VBA 命令来在工程之间进行转换。关于 VBA IDE 的更多信息,可以查看“用 VBA IDE 编辑工程” 用 VBA 管理器组织工程 你可以使用 VBA 管理器查看装载在当前 AutoCAD 进程的所有 VBA 工程。VBA 管理器一个AutoCAD 工具,它允许你装载、卸载、保存、创建、嵌入和分离 VBA 工程。 打开VBA 管理器的步骤: 1. 在工具菜单中选择宏-VBA 管理器。 2. 或者,在 AutoCAD 中调用 VBAMAN 命令。 本节的内容: 装载现存的工程 当你装载工程到AutoCAD 中,所有的公用的子程序(也称为宏)都可以使用。 嵌入于图形中的工程在图形打开时就被装载。保存在DVB 文件中的工程必须单独装载。 装载现存的VBA 工程文件 1. 在 VBA 管理器中,使用装载项可弹出打开VBA 工程对话框。 2. 在打开 VBA 工程对话框中,选择打开的工程文件。该VBA 工程对话框允许你打开有效的DVB 文件。如果你尝试打开不同类型的文件,你将会得到出错信息。 3. 选择打开。 本章将为你介绍 AutoCAD VBA 工程及VBA 交互开发环境(VBA IDE)。尽管大部分VBA 环境在行为上都是相似的,但AutoCADVBA IDE 还是有些独有的特性。在AutoCAD 中还有些相关的命令可以用于装载工程、运行工程,或打开VBA IDE 环境。本章将概要介绍VBA 工程、VBA 命令和VBA IDE 的使用。

Jeecms二次开发相关文档(入门)

Jeecms二次开发相关文档(入门) 目录: (本文档中内容整理自网络并结合自己实际开发经验总结而来,文档后有相关内容引用出处,本处声明免责,不承担任何纠纷,文档供大家交流使用) Jeecms二次开发相关文档(入门) (1) 一、jeecms内部请求转发运行原理 (2) 二、jeecms使用freemarker标签示例及原理 (4) 1、标签使用示例 (4) 2、标签原理 (4) 3、自定义标签(实例演示说明标签用法) (7) 三、在MyEclipse工作环境中构建jeecms项目 (10) 1、搭建Jeecms的运行环境 (10) 2、安装jeecms演示系统 (10) 3、导入Jeecms项目 (10)

一、jeecms内部请求转发运行原理 Jeecms中有众多的配置文件,单xml配置文件就相当繁多,各个文件间的关联查找使用关系也不像简单的struts配置文件一样。如首页的显示过程如下。 系统架构是ssh+freemarker模板构成的,所以先要熟悉freemarker模板技术。 先看web.xml文件,其中欢迎页面有: index.jspa index.do index.html 接着再看jeecms/core/struts-core-front.xml配置文件,发现有个action的通用配置: ${namespace} ${actionName} struts收到请求以后,将请求转发到core.dynamicSystemAct这个对象,注意这个这个class并不是真正的类,是类的别名,由spring通过标注@Controller进行绑定,web应用上下文可以通过classpath自动扫描到这个类。 @Controller("core.dynamicSystemAct") public class DynamicSystemAct