导读:本人使用的是dedecms5.3,由于做了很多二次开发,所以现在虽然dedecms新版出来了,但是不能升级,不然对应的二次开发工作量太大了.因此,...
本人使用的是dedecms5.3,一直坚持使用dedecms5.3版本.
? ? ? ?由于我的网站是个学术网站B5教程网?cms教程,是dede5.3和pw8.7整合的,会员间实现了无缝账号互通和登录,由于dedecms5.3没有控制会员注册的设置,因此,为了控制网站会员注册的数量和质量,增加会员账号的重要性,监测人网站采用二次开发来控制会员注册.
? ? ? ? ? ? ? 我的思路主要是每月对外开放4天供网站会员进行注册,其余时间关闭注册功能,但登录等其他功能不受影响.主要是修改index_do.php和添加系统变量.
? ? ? ? ?
? ? ? ?下面为本人原创的开发步骤:
? ? ? ? ? ? ?
1、index_do.php中找到?
//引入注册页面
else if($dopost=="regnew")
{
在后面添加:
?
//*****************wbsky6 添加规定时间内注册或者任意时间注册,$zhuceriqi是关键 开始***************************
// $zhuceriqi获取允许注册日期,指的是日,比如5月4日、14日和24日可以注册,即设置为4/14/24
//$zhuceriqi为0时表示任何时段均可注册,为字符串时则只能规定的时间段内注册.
$zhuceriqi =$cfg_zhucerq;//"4/14/16/13";//即此处要么为0,表示不受限制;要么为限制字符串."4/14/3/17"
?
$flag_kz=0;//0表示不能注册,1表示能注册
if ($zhuceriqi==0){ //表示不收限制,任何时段均可注册. ?
? ? ?$flag_kz=1;
? ? }
else if ($zhuceriqi!=0){//表示受限制,需要在规定时间内才能注册. ? ? ? // 取得今天的时间
? ? ? ? ? $arr = getdate();
? ? ? ? ? $jtr= $arr['mday'];//取得今天是多少日,判断今天是否开放注册
? ? ? ? ? ?$rq=explode("/",$zhuceriqi);// 将所有允许注册日期全部存储到rq数组中.
? ? ? ? ? ? for($i=0; $i<count($rq); $i++){?
? ? ? ? ? ? ? ? ? if($jtr==$rq[$i]){
? ? ? ? ? ? ? ? ? ? ? ? ?$flag_kz=1;
? ? ? ? ? ? ? ? ? ? ? ? ?break;}
? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ?else
? ? ? ? ? ? ? ? ? {$flag_kz=0;}
? ? ? ? ? ? ? ?}//for end
}//if endif ($flag_kz==1){//表示能注册
//*****************wbsky6 添加规定时间内注册或者任意时间注册,$zhuceriqi是关键 结束***************************
? ?
?
2、紧接着找到:
? require_once(dirname(__FILE__)."/reg_new.php");
? exit();
并在后面添加:
?
//*****************wbsky6 添加规定时间内注册或者任意时间注册,$zhuceriqi是关键 开始***************************
}
else if ($flag_kz==0){//表示不能注册
ShowMsg("您好!今日不对外开放注册!","/noreg.html");
exit();
}
//*****************wbsky6 添加规定时间内注册或者任意时间注册,$zhuceriqi是关键 结束***************************
?
这样子index_do.PHP的修改就完成了.?
3、创建系统变量:
?
? 在系统设置里面增加变量cfg_zhucerq,放到会员设置分组下,此变量为0表示任何时段均可注册,4/14/16/13表每月开放注册的时间段.
? ? ? 以上为wbsky6本人此次二次开发的总结,希望大家多多支持wbsky6,后续将有更多二次开发的心得总结分享给大家!
? ? ? ? ? ? ? ?