phpcms修改自动提取缩略图的字段,可同时判断多个字段
发布时间:2020-08-17 08:57:17 来源: 点击:
官方默认的自动提取缩略图是从content字段中获取的,并且可以指定第几张图片,这种方法好处就是我们可以不用给缩略图单独上传一次图片了。
但是最近在做企业站的时候,因为要是用产品图轮播效果,经常会用到组图字段(pictureurls),这就造成了系统无法为我们提取缩略图,所以做了个改造:
(1)找到代码:phpcms\model\content_model.class.php,找到代码:
但是最近在做企业站的时候,因为要是用产品图轮播效果,经常会用到组图字段(pictureurls),这就造成了系统无法为我们提取缩略图,所以做了个改造:
(1)找到代码:phpcms\model\content_model.class.php,找到代码:
- //自动提取缩略图
- if(isset($_POST['auto_thumb']) && $systeminfo['thumb'] == '' && isset($modelinfo['content'])) {
- $content = $content ? $content : stripslashes($modelinfo['content']);
- $auto_thumb_no = intval($_POST['auto_thumb_no'])-1;
- if(preg_match_all("/(src)=([\"|']?)([^ \"'>]+\.(gif|jpg|jpeg|bmp|png))\\2/i", $content, $matches)) {
- $systeminfo['thumb'] = $matches[3][$auto_thumb_no];
- }
- }
改成:
- //自动提取缩略图
- if(isset($_POST['auto_thumb']) && $systeminfo['thumb'] == '' && isset($modelinfo['content'])) {
- $content = $content ? $content : stripslashes($modelinfo['content']);
- $auto_thumb_no = intval($_POST['auto_thumb_no'])-1;
- if(preg_match_all("/(src)=([\"|']?)([^ \"'>]+\.(gif|jpg|jpeg|bmp|png))\\2/i", $content, $matches)) {
- $systeminfo['thumb'] = $matches[3][$auto_thumb_no];
- }
- if(empty($systeminfo['thumb']) && array_key_exists("pictureurls",$data)){ //判断有无缩略图并且pictureurls字段是否存在
- $data['pictureurls'] = string2array($modelinfo['pictureurls']);
- $systeminfo['thumb'] = $data['pictureurls'][0][url];
- }
- }
主要增加的代码是:
if(empty($systeminfo['thumb']) && array_key_exists("pictureurls",$data)){
$data['pictureurls'] = string2array($modelinfo['pictureurls']);
$systeminfo['thumb'] = $data['pictureurls'][0][url];
}
首先判断thumb是否已经生成,并且pictureurls是否存在,防止报错,pictureurl可以改成自己的其他字段
(2)找到该文件中的另外一处代码275行左右
- //自动提取缩略图
- if(isset($_POST['auto_thumb']) && $systeminfo['thumb'] == '' && isset($modelinfo['content'])) {
- $content = $content ? $content : stripslashes($modelinfo['content']);
- $auto_thumb_no = intval($_POST['auto_thumb_no'])-1;
- if(preg_match_all("/(src)=([\"|']?)([^ \"'>]+\.(gif|jpg|jpeg|bmp|png))\\2/i", $content, $matches)) {
- $systeminfo['thumb'] = $matches[3][$auto_thumb_no];
- }
- }
改成:
- //自动提取缩略图
- if(isset($_POST['auto_thumb']) && $systeminfo['thumb'] == '' && isset($modelinfo['content'])) {
- $content = $content ? $content : stripslashes($modelinfo['content']);
- $auto_thumb_no = intval($_POST['auto_thumb_no'])-1;
- if(preg_match_all("/(src)=([\"|']?)([^ \"'>]+\.(gif|jpg|jpeg|bmp|png))\\2/i", $content, $matches)) {
- $systeminfo['thumb'] = $matches[3][$auto_thumb_no];
- }
- if(empty($systeminfo['thumb']) && array_key_exists("pictureurls",$data)){
- $data['pictureurls'] = string2array($modelinfo['pictureurls']);
- $systeminfo['thumb'] = $data['pictureurls'][0][url];
- }
- }
两处修改方式完全一样,这样我们在保存文章的时候,会自动从pictureurls字段中读取第一个图片作为缩略图,无需再次上传图片了。
精彩推荐相关内容
- (2019-05-31)阿里云ECS phpcms v9 各种注入漏洞补丁
- (2016-07-03)phpcms筛选功能(经典无错)---汇总网上...
- (2020-05-18)phpcms v9头像上传改为H5上传(cropper.js)
- (2019-03-16)phpcms v9后台增加阅读量字段,可任意...
- (2020-08-13)phpcms调用广告(ad)列表方法
- (2019-08-26)phpcms v9自定义栏目伪静态造成页面无法404问题
- (2020-08-12)phpcms给列表页添加调用点击次数标签hits="1"
- (2020-09-07)phpcms后台登录时用ajax实现实时校验验证码
- (2019-04-02)phpcms文章列表增加一键推送到百度功能
- (2019-04-15)phpcms v9添加文章中的部分图片无法自...
相关栏目
热门文章
最新图文
-
- Time:2020-09-07
-
- Time:2020-08-20
-
phpcms生成缩略图时png和gif透明格式出现黑底解决方案
- Time:2020-08-17
-
- Time:2020-08-13
-
- Time:2020-08-12
-
phpcms v9头像上传改为H5上传(cropper.js)
- Time:2020-05-18
-
- Time:2019-10-13
-
- Time:2019-09-16
评论排行
- (5)条phpcms筛选功能(经典无错)
- (4)条朋友圈转“贩卖儿童判死”
- (4)条微信即将封杀分销平台?传30
- (3)条做优化,十个最让用户反感的
- (2)条phpcms v9字段筛选教程
- (2)条【织梦bug】织梦5.7进入后台
- (2)条phpcms v9通用api开发教程
- (1)条网页制作技巧教程:网页无障
- (1)条贪吃的阿里:阿里2年疯狂并
- (1)条史上最全SEO高级搜索命令大全