二次开发帝国CMS方法以及常见问题
1、若是敞开了“封闭前台一切动态页面”选项,二次开发的文件怎么能拜访?
答:能够在开发的程序代码顶部一行加:define('EmpireCMSAdmin','1');
就能够不受此设置影响。
2、LoadLang()导入语言包文件途径是怎么表示的
答:导入语言包文件地址是相对于 ../data/language/ 目录,比方:
(1)、若是程序文件在/e/extend/目录,比方:/e/extend/a.php,则导入语言包能够用:
require LoadLang('pub/fun.php');
(2)、若是程序文件在/e/extend/helloworld/目录,比方:/e/extend/helloworld/a.php,则导入语言包能够用:
require '../'.LoadLang('pub/fun.php');
(3)、若是程序文件在根目录,比方:/a.php,则导入语言包能够用:
require ECMS_PATH.'e/data/'.LoadLang('pub/fun.php');
3、$editor声明目录层次变量是怎么表示的:
答:此变量若是没有运用printerror()等函数能够不设置。
默认$editor变量为0。
当程序文件在/e/path/目录,$editor不用设置,也就是用默认0。
当程序文件在/e/path/path2/目录,$editor=1。
当程序文件在/e/path/path2/path3/目录,$editor=2。
当程序文件在/e/path/path2/path3/path4/目录,$editor=3。
4、导入文件介绍:
导入栏目、专题、标题分类缓存文件:/e/data/dbcache/class.php
导入会员组缓存文件:/e/data/dbcache/MemberLevel.php
导入标签函数文件:/e/class/t_functions.php
导入编译标签文件:/e/class/functions.php
5、推荐变量过滤处置
(1)、数字型变量能够用(int)或intval函数处置,比方:
$page=(int)$_GET['page'];
或
$page=intval($_GET['page']);
(2)、带小数点的数字型变量能够用(float)或floatval函数处置,比方:
$money=(float)$money;
或
$money=floatval($money);
(3)、字符型处置:
不带空格或其他特殊符号的,用
RepPostVar()函数过滤
带空格或其他特殊符号的用:
RepPostVar2()函数过滤
写入数据库的用:
RepPostStr()函数过滤