在使用dedecms做網(wǎng)站常常會(huì)遇到一些棘手的問題
比如:頁(yè)面圖片不顯示(src 的地址不對(duì))等等。
1、更新網(wǎng)站時(shí)錯(cuò)誤
問題:Call to a member function GetInnerText() on a non-object(在一個(gè)非對(duì)象類型上調(diào)用成員函數(shù) GetInnerText())。
原因:出現(xiàn)這個(gè)問題,是因?yàn)樽远x了內(nèi)容模型,這個(gè)內(nèi)容模型里有圖片字段。當(dāng)我們?nèi)ド删W(wǎng)站時(shí),更新網(wǎng)站就會(huì)提示此錯(cuò)誤。
解決:
打開 \include\taglib\channel\img.lib.php 文件
找到
$innerTmp = $arcTag->GetInnerText();
改成
$innerTmp = ($arcTag=="") ? trim($arcTag) : trim($arcTag->GetInnerText());
2、網(wǎng)頁(yè)中圖片不顯示
問題:圖片 src 地址顯示不對(duì),如:{dede:img text=\‘\‘ width=\‘270\‘ height=\‘129\‘} /uploads/161130/1-161130110AW61.jpg{/dede:img} 。
當(dāng)將地址換成 網(wǎng)址+ /uploads/161130/1-161130110AW61.jpg 時(shí),能顯示之前上傳的圖片。
原因:出現(xiàn)這個(gè)問題,是因?yàn)樽远x了內(nèi)容模型,這個(gè)內(nèi)容模型里有圖片字段。并且用的是圖片,并非圖片(僅網(wǎng)址)。
解決:
打開 \include\extend.func.php 文件。
這個(gè)文件就是系統(tǒng)預(yù)留的自定義函數(shù)接口文件,主要用于二次開發(fā)用的。在該文件最后加上如下代碼:
function GetOneImgUrl($img,$ftype=1){  
    if($img <> ''){  
        $dtp = new DedeTagParse();  
        $dtp->LoadSource($img);  
        if(is_array($dtp->CTags)){  
            foreach($dtp->CTags as $ctag){  
                if($ctag->GetName()=='img'){  
                    $width = $ctag->GetAtt('width');  
                    $height = $ctag->GetAtt('height');  
                    $imgurl = trim($ctag->GetInnerText());  
                    $img = '';  
                    if($imgurl != ''){  
                        if($ftype==1){  
                            $img .= $imgurl;  
                        }  
                        else{  
                            $img .= '<img src="'.$imgurl.'" width="'.$width.'" height="'.$height.'" />';  
                        }  
                    }  
                 
                }  
            }  
        }  
    $dtp->Clear();  
    return $img;  
    }  
}
然后是調(diào)用該圖片的代碼也要改變:
列表頁(yè)和首頁(yè)調(diào)用方法:
[field:bigpic function='GetOneImgUrl(@me,0)'/]  //調(diào)用圖片的信息,自動(dòng)調(diào)用寬度和高度(已包含Html代碼的<img />)
[field:bigpic function='GetOneImgUrl(@me,1)'/]  //只調(diào)用圖片地址,一般可用于背景圖嵌套
內(nèi)容頁(yè)調(diào)用方法:
{dede:field name='bigpic' function='GetOneImgUrl(@me,1)'/}
對(duì)應(yīng)的,在添加圖片的字段時(shí),選擇僅網(wǎng)址.
3、增加用戶時(shí),提示用戶名已存在
問題:在用戶組里,刪除用戶后,重新添加時(shí),提示用戶名已經(jīng)存在。
1032021-20161202210151693-1436890551
原因:當(dāng)添加用戶后,在會(huì)員中心中可以看到,該用戶也被添加進(jìn)會(huì)員列表了。
2
解決:刪除添加的用戶后,同時(shí)也要?jiǎng)h除會(huì)員中心得注冊(cè)會(huì)員列表里的該會(huì)員。
3