欢迎来到站长天空!

DedeCMS

当前位置: 主页 > CMS教程 > DedeCMS

dede文章页面如何显示作者的头像默认只能显示作者用户名

时间:2020-11-04 00:00:00|栏目:DedeCMS|点击:

">dede在文章页面显示作者只是显示其用户名,但是假如我想把dede改造成较为社交化的网站,我觉得是有必要显示作者的头像的,但是官方并没有相应的模版标签。
在网上看到解决这个问题的办法基本上是直接在模版页面调用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']="";
$this->Fields['authoremail']=$authorInfo['email'];

这段代码的作用就是根据文章的作者id查询作者信息,其中当然包括头像。
我这里为了以后备用查询出了头像 email 和用户名称三种信息。
在用户头像的这个标签里面我做了一些处理,使在模版中调用的时候能直接生成链接,指向作者的空间。
在文章模板中调用作者头像的语句为:

代码如下:
{dede:field.authorface/}

这个标签对应的php代码其实就是上面的$this->Fields['authorface'],同理我们要查询出作者的email信息其实是在php代码的$this->Fields['authoremail']中,对应的模版标签为{dede:field.authoremail/}

上一篇:dede调用其他栏目的文章或者缩略图列表且有分页效果的方法

栏    目:DedeCMS

下一篇:dedecms实现有短标题时显示短标题、无短标题时显示长标题的方法

本文标题:dede文章页面如何显示作者的头像默认只能显示作者用户名

本文地址:https://zz.feitang.co/CMSjiaocheng/27286.html

广告投放 | 联系我们 | 版权申明

申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:257218569 | 邮箱:257218569@qq.com

Copyright © 2018-2026 站长天空 版权所有 Powered by EyouCms冀ICP备14023439号