首页建站经验 Dedecms列表页中读取内容内的图片实现方法

Dedecms列表页中读取内容内的图片实现方法

因工作需要近日用织梦做了一个小站。
其中有一个js展示学校作品的页面需要从该栏目的图片集中读取每个图片集的第一张图片到该页面,也就是从列表页获取内容页的图片。
百度和…

因工作需要近日用织梦做了一个小站。
其中有一个js展示学校作品的页面需要从该栏目的图片集中读取每个图片集的第一张图片到该页面,也就是从列表页获取内容页的图片。
百度和谷歌中搜索了一下只找到了从列表页获取文章内容第一张图片的解决方法。
最后自己也解决了列表页获取图片集第一张图片。
今日和大家一并分享一下:
1:在列表页获取文章内容页第一张图片 在通常情况下图片的缩放图是有文章第一张图片生成的。
缩放图和文章第一张图片直接存在一定的关系。
我们先看一下缩放图和第一张图片的路径:
缩放图:

第一图片:

我们观察可以发现:两张图片的后七位是不同的:
我们可以通过函数删除缩略图字符串最后七位,然后再补上后缀.jpg函数如下://将缩放图转变为文章第一张图片function firstimg($str_pic){$str_sub=substr($str_pic,0,-7).".jpg";//删除缩略图字符串最后七位,然后再补上后缀.jpgreturn $str_sub;}
将该函数添加到../ include/ common.func.php
调用的方法是:[field:litpic function='firstimg(@me)'/] 2:在列表页获取图片集中第一张图片   图片集中的图片获取到图片有一点麻烦,分析图片集的数据库表结构后发现,织梦将图片集的描述、标题、图片地址都存放到了字段(addonimages)中。
   我们来看一下addonimages字段内的内容:{dede:pagestyle maxwidth=’800′ pagepicnum=’12′ ddmaxwidth=’200′ row=’3′ col=’4′ value=’2′/}
{dede:img ddimg=’/uploads/allimg/100830/1-100S0140H8.jpg’ text=’美甲师 何玲’ width=’270′ height=’403′} /uploads/allimg/100830/1-100S0140H8.jpg {/dede:img}
【/uploads/allimg/100830/1-100S0140H8.jpg】
这个就是我们需要的网址。
只有想办法将其过滤出来就可以了。
看一下我们的功能函数: //取图片集中的第一张图片function imgurlsfirstimg($imgurls){$start=strpos($imgurls,’ddimg=’)+6;//寻找开始标记if ($start) $imgurls=substr($imgurls,$start);//删除前面 $end=strpos($imgurls,’text=’);//寻找结束标记 if ($end)   $imgurls=substr($imgurls,0,$end);//删除后面return $imgurls; }
其中标记为蓝色的部分是截取的标记。
将该函数添加到../ include/ common.func.php 使用的办法如下:{dede:sql sql=’select * from dede_archives, dede _addonimages where aid=id and dede _addonimages.typeid=16′}[field:title/]
{/dede:sql}
我使用的办法是用sql语句直接读取,大家可以修改为符合自己的。
本文来自网络,不代表1号站长-站长学院|资讯交流平台立场。转载请注明出处: https://www.1cn.cc/jianzhan/jingyan/21175.html
上一篇dedecmsV5.6文档关键词实现自动链接解决方案
下一篇 dedecms快速更换网站空间搬家办法
admin

作者: admin

这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

为您推荐

评论列表()

    联系我们

    联系我们

    0898-88888888

    在线咨询: QQ交谈

    邮箱: email@wangzhan.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部