DEDEBIZ文章內(nèi)圖片ALT、圖片標題自動添加為標題、去掉圖片樣式
DEDEBIZ網(wǎng)站管理系統(tǒng)現(xiàn)在可以自動給文章內(nèi)的圖片加上ALT、標題并去掉圖片的樣式,這樣即方便了SEO,又可以圖片防止在某個分辨率下變形,但默認模板里面并沒有實現(xiàn)這一效果,其實這一效果在擴展里面已經(jīng)添加了,只需調(diào)用即可。
使用方法:打開內(nèi)容頁模板文件article_article.htm,把
{dede:field.body/}
修改為
{dede:field.body function='obtainalt(@me)'/}
就可以了。
效果如下圖所示:
補充:由于我測試時,是在已發(fā)布的文章里面添加的圖片,所以顯示正常,但新發(fā)布文章時,出現(xiàn)了下面的錯誤:
臨時解決方法:
把extend.func.php里面的代碼替換一下。57行-70行
function obtainalt($newalt)
{
global $dsql, $id, $aid;
$myid = isset($id) ? $id : $aid;
$row = $dsql->GetOne("SELECT title FROM `#@__archives` WHERE id='$myid'");
//圖片注釋自動為標題
$newalt = str_ireplace(array('alt=""', 'alt=\'\'', 'title=""', 'title=\'\''), "", $newalt);
$newalt = str_ireplace("<img", "<img alt=\"".$row['title']."\" title=\"".$row['title']."\"", $newalt);
//去掉圖片寬度和高度
$newalt = preg_replace("/style=\"width\:(.*)\"/", "", $newalt);
//去掉結(jié)尾
$newalt = str_ireplace(" /", "", $newalt);
return $newalt;
}
替換為
function obtainalt($newalt)
{
global $dsql, $id, $aid;
$myid = isset($id) ? $id : $aid;
$row = $dsql->GetOne("SELECT title FROM `#@__archives` WHERE id='$myid'");
// 檢查$row是否有效
$title = isset($row['title']) ? $row['title'] : '';
// 圖片注釋自動為標題
$newalt = str_ireplace(array('alt=""', 'alt=\'\'', 'title=""', 'title=\'\''), "", $newalt);
$newalt = str_ireplace("<img", "<img alt=\"".$title."\" title=\"".$title."\"", $newalt);
// 去掉圖片寬度和高度
$newalt = preg_replace("/style=\"width\:(.*)\"/", "", $newalt);
// 去掉結(jié)尾
$newalt = str_ireplace(" /", "", $newalt);
return $newalt;
}
替換后,發(fā)布文章 ,就沒錯誤提示了。
最新版本的,把這個extend.func.php里面的內(nèi)容清空了。你如果想需要這個功能 ,可以直接上面修改的代碼放進去就行了。
聲明:
1.本站主要是為了記錄工作、學習中遇到的問題,可能由于本人技術(shù)有限,內(nèi)容難免有紕漏,一切內(nèi)容僅供參考。
2.本站部分內(nèi)容來源互聯(lián)網(wǎng),如果有圖片或者內(nèi)容侵犯您的權(quán)益請聯(lián)系我們刪除!
3.本站所有原創(chuàng)作品,包括文字、資料、圖片、網(wǎng)頁格式,轉(zhuǎn)載時請標注作者與來源。
1.本站主要是為了記錄工作、學習中遇到的問題,可能由于本人技術(shù)有限,內(nèi)容難免有紕漏,一切內(nèi)容僅供參考。
2.本站部分內(nèi)容來源互聯(lián)網(wǎng),如果有圖片或者內(nèi)容侵犯您的權(quán)益請聯(lián)系我們刪除!
3.本站所有原創(chuàng)作品,包括文字、資料、圖片、網(wǎng)頁格式,轉(zhuǎn)載時請標注作者與來源。
THE END