加入收藏 | 设为首页 | 会员中心 | 我要投稿 | 高级搜索 | RSS
热门搜索:帝国cms 
您当前的位置:首页 > 资料区 > 帝国CMS

帝国自定义函数获取提取正文内容第一张图片作标题缩略图片

时间:2020-03-16 09:25:16  来源:  作者:

首先如果你没有升级为百度编辑器的。可以用系统设置的方法来达成这个目的

从这里传送过去:

帝国cms自动设置标题图片选用文章第一张图片

下面说换成了百度编辑器的。

首先在系统--管理数据表--[管理字段]--点击titlepic右边的修改系统字段

图片.png


那里增加处理函数titlepic1

图片.png

然后打开e\class\userfun.php

在里面添加处理函数

function titlepic1($mid,$f,$isadd,$isq,$value,$cs)//提取内容第一张图为标题图片
{
     global $empire,$dbtbpre,$public_r,$emod_r,$class_r,$tranpicturetype,$musername;
     $titlepic = $_POST['titlepic'];//获取标题字段内容是是否已添加有图片
    if(empty($titlepic) == true){//判断标题字段内容是是否已添加有图片,如果不为空则执行下去。否则直接不执行了
         $content = $_POST['newstext'];//获取newstext字段内容
        $pattern="/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg]))[\'|\"].*?[\/]?>/";//匹配图片地址正则方法
        preg_match_all($pattern,$content,$match);//开始匹配图片地址
        for($i=0;$i<count($match[1]);$i++){//循环匹配$match[1]
            $dir = $_SERVER['DOCUMENT_ROOT'] ; //#获取当前运行脚本所在的文档根目录。
            $dir = $dir.$match[1][$i];//组合图片绝对地址
            $img_info = getimagesize($dir);//获得图片宽高
            if($img_info[0]>186 && $img_info[1]>186)
            //判断图片宽高是否大于186;预防表情图片:这里可以自定义$img_info[0]=宽;$img_info[1]=高,
            //如果不需要判断可以不要IF语句,直接返回return $match[1][$i]
            {
                return $match[1][$i];//返回内容所获取到并且高宽都大于186的第一张图片
            }
        }
    }
}

到这里全部搞定。当编辑完内容后。点击提交。后台就会在标题图片地址栏自动生成在内容提取到附合条件的第一张图片地址

图片.png

 关键字:img  titlepic  地址  字段  标题  获取  判断  匹配  添加  系统  函数  执行  提取  方法  百度  编辑器  自动  设置  返回  传送  帝国
顶一下
踩一下
返回首页
返回首页
热门下载
最新文章
相关文章
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表