织梦dedecms怎么实现调用文章第一张图片(非缩略图)?

[复制链接]
树苗收集系 发表于 2019-11-24 00:12:42 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
之前,网上流传了很多在织梦CMS中调用第一张图片的方法,但大体都一样。即删除缩略图字符串,并添加后缀。然而这种方法仅限于jpg图片或其他单独图片类的调用。如果一个站有png、JPG、gif等多种格式。网上流传的方法明显不适合。现在,发布一种适用各种图片类型的代码,从而实现织梦CMS调用内容页第一张图片的方法:

方法一:(即网上流传的方法)

打开 ../ include/ common.func.php添加如下代码:
  1. //取第一张图地址
  2. function firstimg($str_pic)
  3. {
  4. $str_sub=substr($str_pic,0,-7).".jpg";//删除缩略图字符串最后七位,然后再补上后缀.jpg
  5. return $str_sub;
  6. }
复制代码
然后在模板里循环调用:
[field:litpic function=firstimg('@me')/]
直接调用用:
{dede:field name='litpic' function="firstimg(@me)"/}
以上方法试了下,在图片都为JPG时可以用,如果有PNG,BMP等是不好用,所以优化了下,如下:

方法二:
打开 ../ include/ common.func.php添加如下代码:
  1. function firstimg($str_pic)
  2. {
  3. $str_sub=str_replace("-lp","","$str_pic");  //把缩略图中的‘"-lp"’  删掉就是第一张图的地址了。
  4. return $str_sub;
  5. }
复制代码
然后在模板里循环调用:
[field:litpic function=firstimg('@me')/]
直接调用用:
{dede:field name='litpic' function="firstimg(@me)"/}

后记:方法二为方法一的改良版。适用于最新版的DEDECMS,添加的位置和方法一样添加即可。

回复

使用道具 举报

发布主题
推荐阅读 更多
阅读排行 更多
广告位
全国统一客服电话
400-1234-5678

24x7小时免费咨询

  • 官方在线客服

    QQ客服:小西

    点击交谈

    QQ客服:良子

    点击交谈

    QQ客服:闵月

    点击交谈
  • 安徽省合肥市高新区创新产业园

  • 手机扫码查看手机版

    手机查找资源更方便

  • 扫一扫关注官方微信

    加入官方微信群