海纳百客

海纳百客

织梦CMS批量提取文章第一张图片设置缩略图方法(sql语句实现)

吃瓜阿阳

友情提示点击顶部放大镜 可以使用站内搜索 记住我们的地址 www.hainabaike.com

最近使用dedecms采集一批文章发布状态为待审核,文章都带有图片,审核后发现无法自动提取第一张图片为缩略图,找了很多方法,使用以下sql指令可以批量提取第一张图为缩略图

update dede_archives,dede_addonarticle set
dede_archives.litpic=substring(dede_addonarticle.body,INSTR(dede_addonarticle.body,'src="')+5,100)
where dede_archives.id=dede_addonarticle.aid;
update dede_archives set litpic=substring(litpic,1,instr(litpic,'"' )-1);

执行这个语句之后 ,之前设置的文章缩略图路径将全部替换了,截图文章第一张图片的地址就是缩略图路径(无图则不会提取)。

但是执行这个sql 操作之后 ,后台的文章是不会自动带有[图片]属性的,大家可以再执行一句sql代码,如下:

update `dede_archives` set flag='p' WHERE litpic <> ''
update biz_archives,biz_addonarticle set
biz_archives.litpic=substring(biz_addonarticle.body,INSTR(biz_addonarticle.body,'src="')+5,100),goodpost=9999
where biz_archives.id=biz_addonarticle.aid and biz_archives.typeid=21 and biz_archives.litpic = ''; //貌似是截取正文第一个src后100个字符 顺便加了一个把占赞设置成9999
update biz_archives set litpic=substring(litpic,1,instr(litpic,'"' )-1) where typeid=21 and goodpost = '9999'; //这一句改进 判断一下goodpost =9999 的再保留到第一个"'之前的数据
update `biz_archives` set flag='p',goodpost=0 WHERE litpic <> '' and goodpost =9999 ; 判断缩略图不为空 并且是设置点赞为9999的加P属性

又得改进 因为第一句截屏的话 有些代码中会有src 的字样 比如本文 但实际是没有图片的 再查找一下不是正确路径的删除

update `biz_archives` set flag='',litpic='' WHERE litpic NOT LIKE '/%' and litpic <>'' 

 

    标签:

    发布评论 条评论)

    评论列表