Dedecms 模板中心

您现在的位置: 首页 > 教程文档 > 安装使用 >

织梦dedecms会员信息调用标签memberlist使用大全

来源:未知 发布时间:2017-10-26热度:
memberlist标签介绍: 标签名称: memberlist 功能说明: 会员信息调用标签 适用范围: 全局使用 基本语法: {dede:memberlist orderby=scores row=20} a href=../member/index.php?uid={dede:field.userid /}{dede:field.userid /}/a span{dede:field.score...


memberlist标签介绍:

标签名称:memberlist
功能说明:会员信息调用标签
适用范围:全局使用
基本语法:
{dede:memberlist orderby='scores' row='20'}
<a href="../member/index.php?uid={dede:field.userid /}">{dede:field.userid /}</a>
<span>{dede:field.scores /}</span>
{/dede:memberlist}
参数说明:
row = '6' 调用数目
iscommend = '0' 是否为推荐会员
orderby = 'logintime' 按登陆时间排序 money 按金钱排序 scores 按积分排序
底层模板字段:
dede_member所有字段及spacename(空间名称)、sign(用户签名)


今天好织梦给大家讲解下dede的memberlist这个标签
if(!defined('DEDEINC'))
{
 exit("Request Error!");
}
function lib_memberlist(&$ctag,&$refObj)
{
 global $dsql,$sqlCt;//获取$dsql数据库对象
 $attlist="row|6,iscommend|0,orderby|logintime,signlen|50";
 FillAttsDefault($ctag->CAttribute->Items,$attlist);//过滤标签调用时填写的参数
 extract($ctag->CAttribute->Items, EXTR_SKIP);
 $revalue = '';//存放返回值的变量
 $innerText = trim($ctag->GetInnerText());//获取底层模版字段
 if(empty($innerText)) $innerText = GetSysTemplets('memberlist.htm');//如果没有模版不存在,就用默认的底层模版标签
 $wheresql = ' where mb.spacesta>-1 And mb.matt<10 ';
 if($iscommend > 0) $wheresql .= " And  mb.matt='$iscommend' ";
 $sql = "Select mb.*,ms.spacename,ms.sign From `member` mb
  left join `member_space` ms on ms.mid = mb.mid
  $wheresql order by mb.{$orderby} desc limit 0,$row ";
 $ctp = new DedeTagParse();//建立解析对象
 $ctp->SetNameSpace('field','[',']');//设置限制边界,就和smarty对象的前缀后缀一样
 $ctp->LoadSource($innerText);//引入底层模版
 $dsql->Execute('mb',$sql);//执行SQL
 while($row = $dsql->GetArray('mb'))
 {
  $row['spaceurl'] = $GLOBALS['cfg_cmsurl'].'/member/index.php?uid='.$row['userid'];
  if(empty($row['face'])) {
   $row['face'] = $GLOBALS['cfg_memberurl'].'/images/nopic.gif';
  }
 
  foreach($ctp->CTags as $tagid=>$ctag){
   if(isset($row[$ctag->GetName()])){ $ctp->Assign($tagid,$row[$ctag->GetName()]); }
  }//看到assign这个方法,就想到smarty的assign的附值函数,就是调用模版
  $revalue .= $ctp->GetResult();//把结果连接起来返回
 }
 return $revalue;
}
现在对于dede的这个文件/include/dedetag.class.php不是太清楚,只能通过一个个标签慢慢了解,这个memberlist标签是其中最简单的一个。

    责任编辑:好织梦