校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 網站建設 > 建站知識 > 織夢CMS如何從列表頁獲取內容頁的圖片

織夢CMS如何從列表頁獲取內容頁的圖片

POST TIME:2020-03-28 19:02

近日因工作發展的需要用織夢CMS做了個網站,其中有一個js展示學校作品的頁面需要從該欄目的圖片集中讀取每個圖片集的第一張圖片到該頁面,也就是從列表頁獲取內容頁的圖片。

百度和谷歌中搜索了一下只找到了從列表頁獲取文章內容第一張圖片的解決方法。最后自己也解決了列表頁獲取圖片集第一張圖片。今日和大家一并分享一下:

1、在列表頁獲取文章內容頁第一張圖片

在通常情況下圖片的縮放圖是有文章第一張圖片生成的。縮放圖和文章第一張圖片直接存在一定的關系。我們先看一下縮放圖和第一張圖片的路徑:

縮放圖:

第一圖片:

我們觀察可以發現:兩張圖片的后七位是不同的:

我們可以通過函數刪除縮略圖字符串最后七位,然后再補上后綴.jpg

函數如下:

//將縮放圖轉變為文章第一張圖片

function firstimg($str_pic)

{

$str_sub=substr($str_pic,0,-7).".jpg";//刪除縮略圖字符串最后七位,然后再補上后綴.jpg

return $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'}

<Atitle="[field:title/]"href="/zuopin/"rel=[field:imgurlsfunction='imgurlsfirstimg(@me)'/]>[field:title/]</A>

{/dede:sql}

我使用的辦法是用sql語句直接讀取,大家可以修改為符合自己的。



收縮
  • 微信客服
  • 微信二維碼
  • 電話咨詢

  • 400-1100-266
主站蜘蛛池模板: 惠安县| 普兰县| 枣庄市| 乐都县| 健康| 合作市| 兖州市| 沈丘县| 临城县| 万州区| 灵丘县| 喜德县| 克东县| 广东省| 宁晋县| 武山县| 朝阳县| 五大连池市| 石渠县| 蕉岭县| 河源市| 常熟市| 康保县| 潞西市| 双峰县| 奉贤区| 汽车| 都匀市| 大渡口区| 石台县| 宁强县| 乌鲁木齐县| 文成县| 北碚区| 吉木乃县| 盖州市| 南召县| 八宿县| 麟游县| 凤翔县| 宝鸡市|