DEDECMS内容页责任编辑调用代码
2009-10-16 19:59:00 来源:WEB开发网上班时间紧 写了有点乱 大家要看仔细点 不要改错了 (郑重声明:修改前请备份原文件)
第一步 先修改内容页模板吧 (打开 templetsdefault 目录下的 article_article.htm)
在你需要调用责任编辑的地方加入如下代码:
责任编辑:{dede:adminname/}
这一步改完了:)
第二步 要修改的文件是变量输出代码 (打开 include 目录下的 inc_archives_view.php)
并找到如下代码:
var $PartView;
var $TempSource;
var $IsError;
var $SplitTitles;
var $MemberInfos;
在这段代码的下面加入:
var $Adminname;
再找到:
else if($ctag->GetName()=="memberinfo")
{
$this->dtp->Assign($tagid,$this->GetMemberInfo());
}
在这段代码的后面加入
Copy code else if($ctag->GetName()=="adminname")//责任编辑调用
{
$this->dtp->Assign($tagid,$this->GetAdminname());
}
再找:
//----------------------
//获得本文的投稿作者信息
//----------------------
function GetMemberInfo()
{
if(!isset($this->MemberInfos['ID'])){
if($this->Fields['memberID']==0) return '';
else{
$this->MemberInfos = $this->dsql->GetOne("Select ID,userid,uname,spacename,spaceimage From dede_member where ID='{$this->Fields['memberID']}' ");
}
}
if(!isset($this->MemberInfos['ID'])) return "";
else{
$minfo = "<a href='".$cfg_memberurl."/index.php?uid=".$this->MemberInfos['userid']."'>浏览 <font color='red'><b>";
$minfo .= $this->MemberInfos['uname']."</font></b> 的个人空间</a>\r\n";
return $minfo;
}
}
在这段代码下面加入
//--------------------------
//责任编辑调用
//----------------------
function GetAdminname()
{
$adm = "";
$rid = $this->ArcID;
$query = "Select a.ID,a.adminID,b.id,b.uname from dede_archives a left join dede_admin b on a.adminid=b.ID where a.id order by a.ID=$rid desc";
$editor = $this->dsql->GetOne($query);
if(is_array($editor)){
$this->adminer = $this->dsql->GetOne("Select ID,userid,uname From dede_member where uname='{$editor['uname']}' ");
if(!isset($this->adminer['uname'])){
$adm = "{$editor['uname']}";
}else{
$adm = "<a href='".$GLOBALS['cfg_cmspath']."/member/index.php?uid=".$this->adminer['userid']."'>{$editor['uname']}</a>
";
}
}
return $adm;
}
这一步下也可以了。
第三步 要修改后台文件 (打开 dede 目录下的 article_eidt_action.php)
注:修改这一步的目地是当文章如果被另一位管理员重新编辑时,责任编辑人会重新更新当前编辑人ID。如果不修改这一步的话,责任编辑人永远显示是原发布人的ID或文章审核人管理员的ID。
找这段代码:
$inQuery = "
更多精彩
赞助商链接