当前位置:首页 > 行业动态 > 正文

如何在DEDECMS中获取并显示文章发布者的个人信息?

在DEDECMS中,可以通过以下方法调用发布者的个人信息:,,1. 使用系统内置标签 {dede:field name='writer'/}来获取 发布者的名称。,2. 使用SQL查询语句从数据库中获取发布者的详细信息。

DEDECMS调用发布者信息的方法

管理系统(DEDECMS)中,调用文章发布者的个人信息可以通过多种方式实现,下面将详细介绍如何在首页和文章内容页上调用发布者的详细信息。

调用方法概述

在DEDECMS v5.7版本中,官方默认模板article_artcile.htm提供了一些基本的调用代码,通过修改include/extend.func.php文件,可以扩展更多的调用功能,以下是具体的步骤和方法:

具体调用步骤

1、在默认模板中调用基本信息

模板位置:在article_artcile.htm模板中,可以直接使用以下标签来调用发布者的基本信息:

如何在DEDECMS中获取并显示文章发布者的个人信息?

 {dede:memberinfos}
     会员头像:<a href="[field:spaceurl /]" class="userface"><img src="[field:face/]" width="52″ height="52″ /></a>
     会员用户名:<a href='[field:spaceurl /]' class="username">[field:uname/]</a>
     会员详细资料:<a href="[field:spaceurl /]" class="useractvi">查看详细资料</a>
     给他留言:<a href="[field:spaceurl /]&action=guestbook" class="useractpm">发送留言</a>
     加为好友:<a href="[field:spaceurl /]&action=newfriend" class="useractaf">加为好友</a>
     用户等级: [field:rankname /]
     注册时间: [field:jointime function="MyDate('Ymd H:m',@me)"/]
     最后登录: [field:logintime function="MyDate('Ymd H:m',@me)"/]
     {/dede:memberinfos}

2、扩展函数调用更多信息

修改include/extend.func.php文件:在文件末尾添加如下代码:

 function GetMemberInfos($fields,$mid){
         global $dsql;
         if($mid <= 0){
             $revalue = "Error";
         }else{
             $row=$dsql>GetOne("select * from dede_member where mid = '{$mid}'");
             if(!is_array($row)){
                 $revalue = "Not user";
             }else{
                 $revalue = $row[$fields];
             }
         }
         return $revalue;
     }

首页调用标签

 {dede:arclist row='10' titlelen='25'}
     标题:[field:title/] 昵称:[field:mid function="GetMemberInfos('uname',@me)"/]
     {/dede:arclist}

内容页调用标签

如何在DEDECMS中获取并显示文章发布者的个人信息?

 昵称:{dede:field.mid function="GetMemberInfos('uname',@me)"/}
     会员类型:{dede:field.mid function="GetMemberInfos('mtype',@me)"/}

3、自定义SQL查询

使用SQL语句进行多表关联查询

 {dede:sql sql="select arc.id,arc.title,arc.mid,m.*,mp.* from dede_archives arc,dede_member m,dede_member_person mp where arc.mid = m.mid and arc.mid = mp.mid and arc.arcrank > 1 and arc.mid <> 0 order by arc.id desc limit 0,15"}
     <li><a href="[field:id runphp='yes']$url = GetOneArchive(@me);@me = $url['arcurl'];[/field:id]" title="[field:title/]">[field:title/]</a> [会员ID:[field:userid/] 昵称:[field:uname/] QQ:[field:qq/]]</li>
     {/dede:sql}

表格示例

字段名 说明 调用方法
uname 用户昵称 [field:uname/]
spaceurl 用户空间链接 [field:spaceurl /]
rankname 用户等级 [field:rankname /]
jointime 注册时间 [field:jointime function="MyDate('Ymd H:m',@me)"/]
logintime 最后登录时间 [field:logintime function="MyDate('Ymd H:m',@me)"/]
email 用户邮箱 [field:email /]
company 公司名称 [field:company /]
address 地址 [field:address /]
mobile 手机号码 [field:mobile /]
url 网址 [field:url /]

FAQs常见问题解答

1.如何在首页显示文章发布者的昵称和注册时间?

如何在DEDECMS中获取并显示文章发布者的个人信息?

答:可以在首页模板中使用如下代码来调用发布者的昵称和注册时间:

{dede:arclist row='10' titlelen='25'}
标题:[field:title/] 昵称:[field:mid function="GetMemberInfos('uname',@me)"/] 注册时间:[field:mid function="GetMemberInfos('jointime',@me)"/]
{/dede:arclist}

2.如何在内容页显示发布者的详细信息,包括昵称、性别、邮箱等?

页模板中使用如下代码来调用发布者的详细信息:

昵称:{dede:field.mid function="GetMemberInfos('uname',@me)"/} <br>
性别:{dede:field.mid function="GetMemberInfos('sex',@me)"/} <br>
邮箱:{dede:field.mid function="GetMemberInfos('email',@me)"/} <br>