欢迎光临 - 我的站长站,本站所有资源仅供学习与参考,禁止用于商业用途或从事违法行为!

帝国cms教程

帝国CMS二次开发入门教程

帝国cms教程 我的站长站 2020-05-23 共165人阅读

本篇主要讲解帝国cms二次开发入门教程,学会了你就会大致知道帝国CMS二次开发从何入手了。首先在说帝国CMS二次开发之前,我们得先了解帝国CMS目录结构和常用的自带函数。

帝国CMS二次开发入门教程

帝国CMS目录结构

系统根目录
├d/            附件和数据存放目录 (data)
│├file/       附件存放目录
│├js/         JS调用生成目录
│└txt/        内容存文本存放目录
├e/            系统程序目录 (empire)
├html/         自定义内容页存放预设目录
├images/       默认模板图片目录
├s/            专题目录 (special)
├search/       高级搜索页面目录
├skin/         模板CSS和图片存放目录
├testdata/     内置测试数据的附件目录 (安装时选择测试数据用的,不内置测试数据可以删除)
└index.html    网站首页
/e/ 系统程序目录
├action/       信息动态列表页和内容页目录
├admin/        后台目录 (可重命名)
├class/        系统核心文件目录
├data/         系统处理数据相关目录 (临时文件、缓存等)
├DoInfo/       前台会员管理信息目录 (页面模板e/template/DoInfo)
├DoPrint/      打印页面目录
├DownSys/      下载系统模型功能目录 (页面模板e/template/DownSys)
├enews/        前台处理数据入口文件
├extend/       扩展程序目录
├ftp/          FTP识别目录
├install/      安装程序目录,安装后请删除掉
├member/       前台会员功能目录 (页面模板e/template/member)
├message/      提示信息页面目录
├NewsSys/      新闻系统模型功能目录
├payapi/       在线支付接口目录 (页面模板e/template/payapi)
├pl/           评论页目录
├public/       公用功能程序目录 (页面模板e/template/public)
├sch/          全站全文搜索生成目录
├search/       普通搜索文件目录
├ShopSys/      商城系统模型功能目录 (页面模板e/template/ShopSys)
├ShowKey/      前台验证码文件目录
├space/        会员空间目录 (其中template为会员空间模板目录)
├tags/         TAGS列表文件目录
├tasks/        计划任务脚本存放目录
├template/     前台动态页的模板目录
├tool/         插件相关功能目录 (页面模板e/template/tool)
├update/       升级程序目录 (升级程序复制到这个目录运行)
├ViewImg/      显示图片大图目录
├wap/          WAP功能目录 (其中template为wap模板目录)
└web/          RSS显示文件目录
/e/template/ 动态页面模板目录
├DoInfo/                 前台投稿模板目录 (对应程序目录:/e/DoInfo/)
│├AddInfo.php           发布投稿页面模板 (对应程序文件:/e/DoInfo/AddInfo.php)
│├ChangeClass.php       发布投稿选择栏目页面模板 (对应程序文件:/e/DoInfo/ChangeClass.php)
│├DoInfo.php            管理投稿首页页面模板 (对应程序文件:/e/DoInfo/index.php)
│└tran.php              发布投稿上传附件页面模板 (对应程序文件:/e/DoInfo/tran.php)
├DownSys/                下载模型页面模板目录 (对应程序目录:/e/DownSys/)
│└report.php            提交错误报告页面模板 (对应程序文件:/e/report/index.php)
├member/                 会员中心模板目录 (对应程序目录:/e/member/)
│├memberlist/           会员列表页面模板目录 (对应程序文件:/e/member/list/index.php)
│├mspace/               管理会员空间页面模板目录 (对应程序目录:/e/member/mspace/)
││├ChangeStyle.php     选择空间模板页面模板 (对应程序文件:/e/member/mspace/ChangeStyle.php)
││├feedback.php        管理会员空间反馈页面模板 (对应程序文件:/e/member/mspace/feedback.php)
││├gbook.php           管理会员空间留言页面模板 (对应程序文件:/e/member/mspace/gbook.php)
││├ReGbook.php         管理会员空间留言回复页面模板 (对应程序文件:/e/member/mspace/ReGbook.php)
││├SetSpace.php        设置会员空间页面模板 (对应程序文件:/e/member/mspace/SetSpace.php)
││└ShowFeedback.php    管理会员空间反馈显示反馈页面模板 (对应程序文件:/e/member/mspace/ShowFeedback.php)
│├AddFava.php           增加收藏页面模板 (对应程序文件:/e/member/fava/add/index.php)
│├AddFriend.php         增加好友页面模板 (对应程序文件:/e/member/friend/add/index.php)
│├AddMsg.php            发送站内信息页面模板 (对应程序文件:/e/member/msg/AddMsg/index.php)
│├buybak.php            购买记录页面模板 (对应程序文件:/e/member/buybak/index.php)
│├buygroup.php          购买充值类型页面模板 (对应程序文件:/e/member/buygroup/index.php)
│├card.php              点卡充值页面模板 (对应程序文件:/e/member/card/index.php)
│├ChangeFriend.php      选择好友页面模板 (对应程序文件:/e/member/friend/FriendClass/index.php)
│├ChangeRegister.php    选择注册会员组页面模板 (对应程序文件:/e/member/register/ChangeRegister.php)
│├cp.php                会员中心首页页面模板 (对应程序文件:/e/member/cp/index.php)
│├downbak.php           消费记录页面模板 (对应程序文件:/e/member/downbak/index.php)
│├EditInfo.php          修改资料页面模板 (对应程序文件:/e/member/EditInfo/index.php)
│├EditSafeInfo.php      修改安全资料页面模板 (对应程序文件:/e/member/EditInfo/EditSafeInfo.php)
│├fava.php              管理收藏页面模板 (对应程序文件:/e/member/fava/index.php)
│├FavaClass.php         管理收藏分类页面模板 (对应程序文件:/e/member/fava/FavaClass/index.php)
│├friend.php            管理好友页面模板 (对应程序文件:/e/member/friend/index.php)
│├FriendClass.php       管理好友分类页面模板 (对应程序文件:/e/member/friend/FriendClass/index.php)
│├getpass.php           取回密码重置页面模板 (对应程序文件:/e/member/GetPassword/getpass.php)
│├GetPassword.php       取回密码页面模板 (对应程序文件:/e/member/GetPassword/index.php)
│├login.php             会员登录页面模板 (对应程序文件:/e/member/login/index.php)
│├loginopen.php         弹出页面提示重新登陆页面模板 (对应程序文件:/e/member/login/login.php)
│├msg.php               管理站内信息页面模板 (对应程序文件:/e/member/msg/index.php)
│├my.php                我的状态页面模板 (对应程序文件:/e/member/my/index.php)
│├register.php          会员注册页面模板 (对应程序文件:/e/member/register/index.php)
│├regsend.php           注册激活帐号页面模板 (对应程序文件:/e/member/register/regsend.php)
│├ShowInfo.php          查看会员资料页面模板 (对应程序文件:/e/member/ShowInfo/index.php)
│└ViewMsg.php           查看站内信息内容页面模板 (对应程序文件:/e/member/msg/ViewMsg/index.php)
├payapi/                 在线支付页面模板目录 (对应程序目录:/e/payapi/)
│└payapi.php            在线支付页面模板 (对应程序文件:/e/payapi/index.php)
├public/                 公共程序页面模板目录 (对应程序目录:/e/public/)
│└vote.php              信息投票结果页面模板 (对应程序文件:/e/public/vote/index.php)
├ShopSys/                商城模型页面模板目录 (对应程序目录:/e/ShopSys/)
│├buycar.php            购物车页面模板 (对应程序文件:/e/ShopSys/buycar/index.php)
│├ListDd.php            管理商城订单页面模板 (对应程序文件:/e/ShopSys/ListDd/index.php)
│├order.php             订单提交表单页面模板 (对应程序文件:/e/ShopSys/order/index.php)
│├ShowDd.php            查看商城订单内容页面模板 (对应程序文件:/e/ShopSys/ShowDd/index.php)
│└SubmitOrder.php       订单提交最终确认页面模板 (对应程序文件:/e/ShopSys/SubmitOrder/index.php)
└tool/                   内置插件模板目录 (对应程序目录:/e/tool/)
└vote.php             投票插件结果页面模板 (对应程序文件:/e/tool/vote/index.php)

帝国CMS常用函数介绍

常用函数可以帮助你解决许多问题,学会了让你少写几千行代码。

一、esub()截取字段函数
语法:esub(字符串,截取字数,后缀)
说明:后缀为截取字符后附带内容,此参数可以省略。
使用范例:
<?=esub('12345678',6)?>,返回结果为:123456
<?=esub('12345678',6,'...')?>,返回结果为:123456...
二、date()转换时间格式函数
语法:date(时间格式,时间戳)
说明:PHP本身函数,使用说明可以参考:http://cn.php.net/manual/en/function.date.php
使用范例:
<?=date('Y-m-d H:i:s',1277865010)?>,返回结果为:2010-06-30 10:30:10
三、format_datetime()转换时间格式函数2
语法:format_datetime(正常时间,时间格式)
说明:和date()的区别是format_datetime是转换正常时间,而date是转换unix时间戳。
使用范例:
<?=format_datetime('2010-06-30 10:30:10','m/d')?>,返回结果为:06/30
四、通过ID取得栏目地址函数
语法:sys_ReturnBqClassname($r,9)
说明:$r为含栏目ID的数组,变量名可任意命名。
使用范例:取得栏目ID=2的栏目地址。
<?php
$cr['classid']=2;
$classurl=sys_ReturnBqClassname($cr,9);
echo $classurl;
?>
通过ID取得栏目地址的其他方法:
(1)、/e/public/ClassUrl/?classid=栏目ID
(2)、/<?=$class_r[栏目ID]['classpath']?>
五、取得信息内容页地址函数
语法:sys_ReturnBqTitleLink($r)
说明:$r为含“id,classid,newspath,filename,groupid,titleurl”字段内容的数组,变量名可任意命名。
使用范例:取得信息ID=8的新闻页面地址
<?php
$nr=$empire->fetch1("select id,classid,newspath,filename,groupid,titleurl from {$dbtbpre}ecms_news where id='8' limit 1");
$titleurl=sys_ReturnBqTitleLink($nr);
echo $titleurl;
?>
通过ID取得信息内容页地址的其他方法:
/e/public/InfoUrl/?classid=栏目ID&id=信息ID
六、提示信息函数1
语法:printerror($error,$gotourl,$ecms,$noautourl,$novar)
说明:
$error:提示信息内容,可以为语言包变量,也可以直接提示内容。
$gotourl:提示信息转向链接地址
$ecms:0为后台提示信息、1为前台提示信息、8为后台提示信息(alert方式)、9为前台提示信息(alert方式)
$noautourl:0为自动转向页面,1为不自动转向页面。此参数可省略,默认为0
$novar:0为提示信息内容采用语言包变量,1为提示信息内容为直接提示内容。此参数可以省略,默认为0
使用范例:
printerror('DbError','http://www.phome.net',1),前台提示,提示信息内容为语言包DbError变量内容,转向帝国网站
printerror('数据库出错','http://www.phome.net',1,0,1),前台提示,提示信息内容为“数据库出错”,转向帝国网站
附加说明:
此函数需结合$editor变量来确定目录层次。默认$editor变量为0。
当程序文件在/e/path/目录,$editor不用设置,也就是用默认0。
当程序文件在/e/path/path2/目录,$editor=1。
当程序文件在/e/path/path2/path3/目录,$editor=2。
当程序文件在/e/path/path2/path3/path4/目录,$editor=3。
七、提示信息函数2 (直接提示内容)
语法:printerror2($error,$gotourl,$ecms,$noautourl)
说明:
$error:直接提示信息的内容。
$gotourl:提示信息转向链接地址
$ecms:0为默认提示信息方式、9为弹出提示信息方式(alert方式)。此参数可省略,默认为0
$noautourl:0为自动转向页面,1为不自动转向页面。此参数可省略,默认为0
使用范例:
printerror2('添加完毕','http://www.phome.net'),提示信息内容为“添加完毕”,转向帝国网站
附加说明:
此函数不需要结合其他变量,可以在任意目录层次使用。不支持使用语言包变量。
八、设置系统Cookie变量函数
语法:esetcookie($var,$val,$life,$ecms)
说明:
$var:为变量名
$val:为变量值
$life:为COOKIE有效时间,单位秒,0为不保存。此参数可省略,默认为不保存。
$ecms:0为设置前台COOKIE变量,1为设置后台COOKIE变量。此参数可省略,默认为0。
使用范例:
esetcookie('mybody','帝国'),定义前台“COOKIE前缀+mybody”变量,变量内容为“帝国”
esetcookie('mybody','帝国',0,1),定义后台“COOKIE前缀+mybody”变量,变量内容为“帝国”
附加说明:
此设置COOKIE函数会给变量名加上COOKIE前缀,你可也可以直接用PHP本身的setcookie来定义。
九、取得系统COOKIE变量函数
语法:getcvar($var,$ecms)
说明:
$var:为变量名
$ecms:0为设置前台COOKIE变量,1为设置后台COOKIE变量。此参数可省略,默认为0。
使用范例:
getcvar('mlusername'),取得前台登陆会员的用户名
getcvar('loginusername',1),取得后台登陆管理员的用户名
附加说明:
此取得COOKIE函数是取得变量名加上COOKIE前缀的变量,你可也可以直接用PHP本身的$_COOKIE['变量名']来取得。
十、取得IP地址函数
语法:egetip()
使用范例:
<?php
$ip=egetip();
echo $ip;
?>
十一、动态页面显示分页函数
语法:page1($num,$line,$page_line,$start,$page,$search)
说明:
$num:总记录数
$line:每页显示数量
$page_line:每页显示分页链接数
$start:预设变量,设置0即可。
$page:当前页码(0为起始页码)
$search:链接附加参数
十二、通过栏目ID取得栏目名和栏目别名方法:
栏目名:<?=$class_r[栏目ID]['classname']?>
栏目别名:<?=$class_r[栏目ID]['bname']?>

帝国CMS二次开发教程

二次开发教程在你了解以上内容后也非常简单,二次开发不需要你了解太多的PHP知识,但需要会一点SQL写法,常用的sql查询语句都可以在网上找到。

帝国CMS二次开发语法范本

<?php
require('../../class/connect.php'); //引入数据库配置文件和公共函数文件
require('../../class/db_sql.php'); //引入数据库操作文件
require('../../data/dbcache/class.php'); //引入栏目缓存文件
$link=db_connect(); //连接MYSQL
$empire=new mysqlquery(); //声明数据库操作类
$editor=1; //声明目录层次$sql=$empire->query("select * from {$dbtbpre}ecms_news order by newstime limit 10"); //查询新闻表最新10条记录
require('template/index.temp.php'); //导入模板文件
db_close(); //关闭MYSQL链接
$empire=null; //注消操作类变量
?>

以上就是一个二次开发的范本,链接数据库 然后查询信息,学会了你就会可以查询调用任何你需要调用的信息了,也可以彻底摆脱帝国CMS默认调用标签的束缚了。

相关推荐
  • 帝国cms二次开发
  • 帝国CMS调用方法
  • 帝国CMS二次开发统计留言数量

    帝国CMS指定模型下的留言数量 代码:<?php$totalnum=(int)$_GET['totalnum']; $totalquery="select count(*) as total from ***_enewsgbook where bid=1 and chec

    帝国cms教程 239 10年前
  • 帝国cms二次开发怎样实现时间为:几小时前、几天前等格式

    放到:userfun.php <?ph ?>之间

    帝国cms教程 516 8年前
  • 帝国CMS二次开发解决内容关键字替换图片ALT办法

    对于帝国CMS的内容管理程序,个人站长朋友是没有什么说的了,安全又稳定,但再美好的东西也会有一点缺陷,对于内容关键字 图片ALT被替换实属让个人站长头疼的,最近在论坛上面找到了解决的办法,这样我们就可以解决这样的烦心事了! 这个办法是对KissVenus发的解...

    帝国cms教程 514 7年前
  • 帝国CMS二次开发织梦CMS数据转帝国CMS教程

    织梦CMS和帝国CMS哪种好?织梦dedecms是目前CMS开源系统中使用人数最多的CMS系统了,凭借着后台使用简单、模板制作也简单,网上模板素材、教程也非常多,受到大家的追捧。但用过织梦CMS都知道,织梦CMS有两个致命缺点:(1)织梦安全性差漏洞多,经常被黑客攻击,虽然官...

    帝国cms教程 529 5年前
  • 帝国CMS二次开发不开后台定时刷新脚本

    在你的操作系统,如果是linux的话,添加以下计划任务。 * * * * * /usr/bin/php /webrootpath/e/tasks/backend_cronjob.php。把代码传到 /e/tasks/ 下。 这个脚本将替代后台的定时刷新,你不用在开着后台了,它帮你定时刷新。适用场景:全战静态化,需要定时刷...

    帝国cms教程 366 7年前
  • 帝国CMS调用栏目自定义字段方法

    帝国CMS调用栏目自定义字段方法说明:封面模板,列表模板,内容模板都可以用,且调用方式都是一样的调用标签:<?=ReturnClassAddField(0,&#39;自定义字段&#39;)?>调用多个:<?=$value=ReturnClassAddField(1,&#39;自定义字段1,自定义字段2&#39;)?>取值:<?=$val...

    帝国cms教程 144 3年前
  • 帝国CMS新手教程调用栏目别名

    帝国CMS调用网站标题灵动标签调用网站标题:<?=$public_r[sitename]?> 帝国CMS标签调用网站标题:[!--pagetitle--] 帝国CMS调用栏目别名: <?=$class_r[$GLOBALS[navclas

    帝国cms教程 256 10年前
  • 帝国CMS调用网站标题的方法

    帝国CMS_调用网站标题的方法方法1: [!--pagetitle--]方法2:<?=$public_r[sitename]?>

    帝国cms教程 369 10年前
  • 帝国CMS灵动标签调用反馈信息

    语法:[e:loop={'select * from XX_enewsfeedback order by bid desc limit 10',8,24,0}]<li><a><?=$bqr[pinpai]?><?=$bqr[chexin]?></a><a><?=$bqr[title]?></a> (<?=fo

    帝国cms教程 229 10年前
  • 帝国CMS调用今日下载本月下载本周下载排行方法
    帝国CMS调用今日下载本月下载本周下载排行方法

    实现方法:第一步在数据表里添加三个字段:DayHits WeekHits MonthHits 分别设为字段类型为INT第二步打开文件:/e/public/ViewClick/index.php(//digg踩数后面添加如下代码...

    帝国cms教程 600 10年前