帝国CMS的标题图片通常需要手动上传,这可能带来一定的不便,尤其是在需要从其他网站下载图片后再上传时。为了解决这一问题,本教程将指导您如何通过直接填写远程图片地址的方式,让系统自动下载并保存图片。

第一步:添加字段处理函数

首先,您需要将以下代码插入到 e/class/userfun.php 文件中:


function f_picurl($mid, $f, $isadd, $isq, $value, $cs) {
    global $empire, $dbtbpre, $public_r;
    if ($value) {
        return $value;
    }
    $picurl = $_POST@['picurl'];
    $classid = (int)$_POST@['classid'];
    if (empty($picurl) || !$classid) {
        return $value;
    }
    $r = DoTranUrl($picurl, $classid);
    if (empty($r['tran'])) {
        return $value;
    }
    $r['filesize'] = (int)$r['filesize'];
    $filepass = (int)$_POST@['filepass'];
    $username = 'picurl';
    $sql = eInsertFileTable($r['filename'], $r['filesize'], $r['filepath'], $username, $classid, $r['filename'], 1, $filepass, $filepass, $public_r['fpath'], 0, $modtype, $fstb);
    return $r['url'];
}
    

第二步:修改 titlepic 字段

接下来,在后台管理中找到“titlepic”字段,并在“后台增加信息处理函数”处填入我们刚刚创建的函数名称:f_picurl。

然后,修改“输入表单替换html代码”部分,将其更改为以下内容:


手动上传:" size="45">


远程下载:

完成以上两步后,您就可以在新增或编辑信息时直接填写远程图片地址,系统会自动完成图片的下载与保存工作。

这种方法不仅简化了操作流程,还提高了工作效率,特别适合那些需要频繁从外部网站获取图片资源的用户。

希望这篇教程能够帮助您更好地使用帝国CMS,实现更加高效的图片管理功能。