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)容清空了。你如果想需要這個功能 ,可以直接上面修改的代碼放進去就行了。

THE END
亚洲中文色欧另类欧美,久久久久久久激情,亚洲 日韩 欧美 另类 国产,中文字幕高清无码男人的天堂 www.sucaiwu.net