dede文章頁面如何顯示作者的頭像?
dede在文章頁面顯示作者只是顯示其用戶名,但是假如我想把dede改造成較為社交化的網站,我覺得是有必要顯示作者的頭像的,但是官方並沒有相應的模版標籤。
推薦學習:織夢cms
在網路上看到解決這個問題的方法基本上是直接在模版頁面呼叫runphp的程式段,的確這種辦法是可行的。
但是我不傾向於這麼做,因為很多時候我們都需要差異化的功能,每次都這樣夾雜著php程式碼看起來很亂。
我是直接在php檔案裡面修改的,讓文章模版可以呼叫幾個新的標籤。
找到/include/arc.archives.class.php檔案
搜尋“$this->addTableRow = $this->dsql->GetOne($query);”,跳到大概154行,在else{ $this->Fields['templet'] = $this->Fields['redirecturl'] = '';}下面加上如下程式碼:
程式碼如下:
/*HEJIE_MODIFY文章作者信息 @www.68cpu.com*/ $query = "SELECT * FROM jcode_member WHERE `mid` = ".$this->Fields['mid']; $authorInfo = $this->dsql->GetOne($query); $this->Fields['authoranme']=$authorInfo['uname']; $this->Fields['authorface']=$authorInfo['face']; if(empty($this->Fields['authorface'])) { $this->Fields['authorface']=($this->authorInfo['sex']=='女')? '../member/templets/images/dfgirl.png' : '../member/templets/images/dfboy.png'; } $this->Fields['authorface']="<a href='".$GLOBALS['cfg_basehost']."/member/index.php?uid=".$authorInfo['userid']."'><img width='32' height='32' src='".$this->Fields['authorface']."' /></a>"; $this->Fields['authoremail']=$authorInfo['email'];
這段程式碼的作用就是根據文章的作者id查詢作者信息,其中當然包括頭像。
我這裡為了以後備用查詢出了頭像 email 和使用者名稱三種資訊。
在用戶頭像的這個標籤裡面我做了一些處理,使在模版中調用的時候能直接生成鏈接,指向作者的空間。
在文章範本中呼叫作者頭像的語句為:
程式碼如下:
{dede:field.authorface/}
這個標籤對應的php程式碼其實就是上面的$this->Fields[ 'authorface'],同理我們要查詢出作者的email資訊其實是在php程式碼的$this->Fields['authoremail']中,對應的模版標籤為{dede:field.authoremail/}
以上是dede文章頁面如何顯示作者的頭像的詳細內容。更多資訊請關注PHP中文網其他相關文章!