找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1447|回复: 0

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

[复制链接]
发表于 2018-6-17 16:05:20 | 显示全部楼层 |阅读模式 来自 中国–河南–新乡
dede在文章页面显示作者只是显示用户名,如果要显示作者的头像该怎么实现呢,官方并没有相应的模版标签,我是直接在php文件里面修改的,让文章模版可以调用几个新的标签
dede在文章页面显示作者只是显示其用户名,但是假如我想把dede改造成较为社交化的网站,我觉得是有必要显示作者的头像的,但是官方并没有相应的模版标签。
在网上看到解决这个问题的办法基本上是直接在模版页面调用runphp的程序段,的确这种办法是可行的。
但是我不倾向于这么做,因为很多时候我们都需要差异化的功能,每次都这样夹杂着php代码看起来很乱。

我是直接在php文件里面修改的,让文章模版可以调用几个新的标签。
找到/include/arc.archives.class.php文件
搜索
  1. $this->addTableRow = $this->dsql->GetOne($query);
复制代码
,跳转到大概154行,在
  1. else{ $this->Fields['templet'] = $this->Fields['redirecturl'] = '';}
复制代码
下面添加如下代码:

代码如下:

  1. /*HEJIE_MODIFY文章作者信息 @www.68cpu.com*/
  2. $query = "SELECT * FROM jcode_member WHERE `mid` = ".$this->Fields['mid'];
  3. $authorInfo = $this->dsql->GetOne($query);
  4. $this->Fields['authoranme']=$authorInfo['uname'];
  5. $this->Fields['authorface']=$authorInfo['face'];
  6. if(empty($this->Fields['authorface']))
  7. {
  8. $this->Fields['authorface']=($this->authorInfo['**']=='女')? '../member/templets/images/dfgirl.png' : '../member/templets/images/dfboy.png';
  9. }
  10. $this->Fields['authorface']="<a href='".$GLOBALS['cfg_basehost']."/member/index.php?uid=".$authorInfo['userid']."'><img width='32' height='32' src='".$this->Fields['authorface']."' /></a>";
  11. $this->Fields['authoremail']=$authorInfo['email'];
复制代码


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

代码如下:

{dede:field.authorface/}

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

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

▶专业解决各类DiscuzX疑难杂症、discuz版本升级 、网站搬家 和 云服务器销售!▶有偿服务QQ 860855665 更多精品应用
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2025-2-1 23:47 , Processed in 0.040140 second(s), 7 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表