dedecms模板调用会员任意信息标签函数的实现方法

 

dedecms模板调用会员任意信息标签函数的实现方法

一、实现方法

1)函数编写

注意:自定义函数的编写一般都存放在/include/extend.func.php 中,以后升级只需要备份一下这个文件即可。

打开这个文件,在文件中最后的?>上一行加入以下代码:

 // 功能:获取任意会员的信息;    //作者:华强℡(QQ:3421209)    //时间:2010-11-23 By Notepad2    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;    } 
 

保存后关闭即可
2)调用方式

要使用这个函数,可以利用系统自带的function与runphp来使用。在底层模板字段中,通常使用function方法。比如
 [field:mid function="GetMemberInfos('uname',@me)"/]

这样就可以很轻松的调用出某个会员的昵称了,那么要调用会员的用户名,则只需要将uname更换为userid即可。这里的值是支持member表的所有字段的。大致为如下一些:

   1. mid 表示会员的唯一编号,由于其唯一的特性,一般用于区别会员;
   2. mtype 表示会员的类型(如自带的“个人”与“企业”);
   3. userid  表示会员用户名(也就是用于登陆);
   4. pwd  表示用户的密码;
   5. uname 表示用户的昵称;
   6. sex  表示用户的性别;
   7. rank 表示用户的等级(也就是后台的用户级别);
   8. uptime 表示用户升级会员组的时间;
   9. exptime 表示用户会员组的有效期天数;
  10. money  表示用户拥有的剩余金币数量;
  11. email  表示用户的注册邮箱地址;
  12. scores  表示用户拥有的剩余积分数量;
  13. matt  表示用户的级别(0为普通,1为推荐,10为后台超级管理员)

知道了以上的这些信息,还有什么不能调用的呢?
二、调用实例

刚才我们说到了调用方法,那么我们来看一下几个简单的实例:
1)在首页的arclist调用文档的所属会员昵称:

 {dede:arclist row=’8′ titlelen=’20′}
    <li>标题:[field:title/] 昵称:[field:mid function="GetMemberInfos('uname',@me)"/]</li>
{/dede:arclist}
2)在内容页的field中调用闻到那股的所属会员昵称:

    {dede:field.mid function="GetMemberInfos(‘uname’,@me)"/}

好了,其它的情况大家去尝试一下吧。