DedeCMS 5.1 版縮略圖修改補充
時間: 2019-05-13 10:26
閱讀: 次
作者:素材無憂網(wǎng)
勾選 “提取第一張圖片為縮略圖” 實際是將第一張圖當作縮略圖 并沒有生成帶"_lit"的小圖
修改文件:\dede\action\article_add_action.php
先看原代碼
//自動獲取縮略圖
if($autolitpic==1 && $litpic==''){
$litpic = GetDDImgFromBody($body);
}
大概意思應(yīng)該就是“縮略圖=獲取圖像從主題內(nèi)容”
也就是上面說的實際是第一張原圖 這就是問題所在
參考了4.X里提取縮略圖代碼,更改為:
//自動獲取縮略圖-改
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更改為:
//自動獲取縮略圖-改
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);
}
}
然后將這兩個文件 復(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ù),就能在原圖中截取居中的、最大面積的符合自定義縮略圖長寬比列的一部分生成縮略圖。
版權(quán)聲明:
本站資源均來自互聯(lián)網(wǎng)或會員發(fā)布,如果侵犯了您的權(quán)益請與我們聯(lián)系,我們將在24小時內(nèi)刪除!謝謝!
轉(zhuǎn)載請注明:
DedeCMS 5.1 版縮略圖修改補充