濮阳杆衣贸易有限公司

主頁(yè) > 網(wǎng)站建設(shè) > 建站知識(shí) > DedeCMS 5.1 版縮略圖修改補(bǔ)充

DedeCMS 5.1 版縮略圖修改補(bǔ)充

POST TIME:2017-11-13 01:02

勾選 “提取第一張圖片為縮略圖” 實(shí)際是將第一張圖當(dāng)作縮略圖 并沒有生成帶"_lit"的小圖

修改文件:\dede\action\article_add_action.php
先看原代碼


//自動(dòng)獲取縮略圖
if($autolitpic==1 && $litpic==''){
$litpic = GetDDImgFromBody($body);
}

大概意思應(yīng)該就是“縮略圖=獲取圖像從主題內(nèi)容”
也就是上面說的實(shí)際是第一張?jiān)瓐D 這就是問題所在
參考了4.X里提取縮略圖代碼,更改為:


//自動(dòng)獲取縮略圖-改
if($autolitpic==1 && $litpic==''){
$cfg_medias_dir = str_replace('/','\/',$cfg_medias_dir);
$picname = preg_replace("/.+?".$cfg_medias_dir."(.*)( |\"|').*$/isU",$cfg_medias_dir."$1",$body);
if(eregi("\.(jpg|gif|png)$",$picname)){
if(ereg("_lit\.",$picname)) $litpic = $picname;
else $litpic = GetDDImage('ddfirst',$picname,0);
}
}

同理\dede\action\article_eidt_action.php更改為:



//自動(dòng)獲取縮略圖-改
if($autolitpic==1 && empty($litpic)){
$cfg_medias_dir = str_replace('/','\/',$cfg_medias_dir);
$picname = preg_replace("/.+?".$cfg_medias_dir."(.*)( |\"|').*$/isU",$cfg_medias_dir."$1",$body);
if(eregi("\.(jpg|gif|png)$",$picname)){
if(ereg("_lit\.",$picname)) $litpic = $picname;
else $litpic = GetDDImage('ddfirst',$picname,0);
}
}

然后將這兩個(gè)文件 復(fù)制覆蓋到\dede\下。
OK!這樣就能打到勾選“提取第一張...”生成縮略圖的目的了。
縮略圖變形 參考[Dedecms生成漂亮整齊的縮略圖]
需修改文件:\include\inc_photograph.php

找到:($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH); 共三處。
改為:($ni,$im,0,0,$src_X,$src_Y,$ftoW,$ftoH,$srcW,$srcH);

修改了縮圖函數(shù),就能在原圖中截取居中的、最大面積的符合自定義縮略圖長(zhǎng)寬比列的一部分生成縮略圖。


上一篇:Dede 刪除文檔同時(shí)文章中的圖片的方法

下一篇:DEDECMS v5.3 發(fā)布圖集時(shí)不能獲取縮略圖的解決辦法

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

  • 400-1100-266
赣州市| 河津市| 和硕县| 阿拉善盟| 永修县| 宣化县| 建水县| 德昌县| 获嘉县| 富锦市| 遵化市| 武邑县| 平阴县| 蒲江县| 科尔| 鄂伦春自治旗| 通州区| 新丰县| 拉萨市| 唐海县| 乌什县| 青海省| 大庆市| 旅游| 巴林右旗| 宜昌市| 榆树市| 加查县| 靖西县| 达孜县| 赤壁市| 乌兰察布市| 额济纳旗| 锡林郭勒盟| 洮南市| 平远县| 五寨县| 南昌市| 贵阳市| 汽车| 全南县|