如法炮制
1.在/e/admin/SetEnews.php文件文本 添加两个两个选项 一个复选框、一个文本框
复选框拟定名字spicswitch 即是 缩图自定义目录开关
文本框拟定名字scustomfilepath 即是 缩图自定义目录
搜索找到 图片缩略图设置
//***红色部分为新增***//
<table width="100%" border="0" cellspacing="1" cellpadding="3" class="tableborder">
<tr class="header">
<td height="25" colspan="2">图片缩略图设置</td>
</tr>
<tr bgcolor="#FFFFFF">
<td width="22%" height="25">自定义缩图目录</td>
<td>开启:
<input name="spicswitch[]" type="checkbox" id="spicswitch[]" value="1"<?=strstr($r['spicswitch'],'1')?' checked':''?>>
自定义目录:
<input name="scustomfilepath" type="text" id="scustomfilepath" value="<?=$r[scustomfilepath]?>" size="38"></td>
</tr>
<tr bgcolor="#FFFFFF">
<td width="22%" height="25">默认值</td>
<td>宽:
<input name="spicwidth" type="text" id="spicwidth" value="<?=$r[spicwidth]?>" size="6">
×高:
<input name="spicheight" type="text" id="spicheight" value="<?=$r[spicheight]?>" size="6"></td>
</tr>
<tr bgcolor="#FFFFFF">
<td height="25">超出部分是否截取</td>
<td><input type="radio" name="spickill" value="1"<?=$r['spickill']==1?' checked':''?>>
是
<input type="radio" name="spickill" value="0"<?=$r['spickill']==0?' checked':''?>>
否</td>
</tr>
</table>
2.添加数据库结构字段
spicswitch 类型 int 长度 1 (已更正原spicwidth错误 更改为spicswitch)
scustomfilepath 类型varchar 长度 30
添加数据库写入字段
搜索(续上一篇的操作)
$add['customfilepath']=hRepPostStr($add['customfilepath'],0);
在后面添加
$add['spicswitch']=(int)$add['spicswitch'];
$add['scustomfilepath']=hRepPostStr($add['scustomfilepath'],0);
搜索(续上一篇的操作)
,customfilepath='$add[customfilepath]'
在后面添加
,spicswitch='$add[spicswitch]',scustomfilepath='$add[scustomfilepath]'
3.在改文件/e/class/connect.php
搜索function DoTranFile($file,$file_name,$file_type,$file_size,$classid,$ecms=0){
//***红色部分为新增和修改***//
//上传文件
function DoTranFile($file,$file_name,$file_type,$file_size,$classid,$ecms=0){
global $public_r,$class_r,$doetran,$efileftp_fr,$empire,$dbtbpre;
$classid=(int)$classid;
//文件类型
$r[filetype]=GetFiletype($file_name);
//文件名
$r[insertfile]=ReturnDoTranFilename($file_name,$classid);
$r[filename]=$r[insertfile].$r[filetype];
//日期目录
$r[filepath]=FormatFilePath($classid,$mynewspath,0);
$filepath=$r[filepath]?$r[filepath].'/':$r[filepath];
//存放目录
$fspath=ReturnFileSavePath($classid);
$r[savepath]=eReturnEcmsMainPortPath().$fspath['filepath'].$filepath;//moreport
//附件地址
$r[url]=$fspath['fileurl'].$filepath.$r[filename];
//缩图文件
$ur=$empire->fetch1("select scustomfilepath,customfilepath,spicswitch from {$dbtbpre}enewspublic limit 1");//查询网站设置数据记录表
$scustomfilepath=$ur['scustomfilepath']?$ur['scustomfilepath']:$ur['customfilepath'];//自定义缩图目录
$r[savepath2]=eReturnEcmsMainPortPath().$scustomfilepath.$filepath;//获取自定义目录
$savepath2=$r[savepath2];
if (!is_dir($savepath2)) {//建立时间目录权限
mkdir($savepath2, 0777, true);
}
if($ur['spicswitch']==0){
$r[name]=$r[savepath]."small".$r[insertfile];//缩图返回目录地址
}else{
$r[name]=$r[savepath2]."small".$r[insertfile];//修改后的缩图返回目录地址
}
//附件文件
$r[yname]=$r[savepath].$r[filename];
$r[tran]=1;
//验证类型
if(CheckSaveTranFiletype($r[filetype]))
{
if($doetran)
{
$r[tran]=0;
return $r;
}
else
{
printerror('TranFail','',$ecms);
}
}
//上传文件
$cp=@move_uploaded_file($file,$r[yname]);
if(empty($cp))
{
if($doetran)
{
$r[tran]=0;
return $r;
}
else
{
printerror('TranFail','',$ecms);
}
}
DoChmodFile($r[yname]);
$r[filesize]=(int)$file_size;
//FileServer
if($public_r['openfileserver'])
{
$efileftp_fr[]=$r['yname'];
}
return $r;
}
还有一处是
//远程保存
function DoTranUrl($url,$classid){
修改方式和上面的一样 不用远程保存可以忽略
代码太长就不贴出来了
4.修改改文件/e/admin/ecmseditor/fileinc/editorpic.php
搜索
$file=$fspath['fileurl'].$filepath.$r[filename];
改为
$ur=$empire->fetch1("select scustomfilepath,customfilepath,spicswitch from {$dbtbpre}enewspublic limit 1");//查询网站设置数据记录表
$scustomfilepath=$ur['scustomfilepath']?$ur['scustomfilepath']:$ur['customfilepath'];//自定义缩图目录
$char = "[s]";
if($ur['spicswitch']==0){//判断是否开启自定义缩图目录
$file=$fspath['fileurl'].$filepath.$r[filename];
}else{
if (strpos($ono, $char) !== false) {//用strpos函数判断$char是否为缩图
$file= $scustomfilepath.$filepath.$r[filename];
}else{
$file=$fspath['fileurl'].$filepath.$r[filename];
}
}
*注意:此方法只能实现 后台 上传图片时生成在自定义目录的缩图 远程保存图片时生成在自定义目录的缩图 (但不限于不包括已上传的图片再去生成缩图,不支持发文章时远程保存图片时生成缩图)
全部地方都可以实现缩图自定义目录功能 需付费修改,如需求助修改请V我方式旁边 ,不需要请忽略,各位也可以自行琢磨,毕竟改的地方太多了,希望理解!!
吐槽:帝国UBB论坛 发帖真费劲啊!!!!!
本章完结....
未经允许不得转载:YESKYLOG » 帝国cms 续篇给附件存放目录位置添加自定义选项之缩图自定义目录
支持