使用方法:打開內(nèi)容頁模板文件article_article.htm,把
{dede:field.body/}
修改為
{dede:field.body function='obtainalt(@me)'/}
就可以了。
效果如下圖所示:
補(bǔ)充:由于我測試時,是在已發(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'");
//圖片注釋自動為標(biāo)題
$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'] : '';
// 圖片注釋自動為標(biāo)題
$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)容清空了。你如果想需要這個功能 ,可以直接上面修改的代碼放進(jìn)去就行了。
]]>