首页 DedeCms正文

dedecms地区数字的调用和转化思路

Admin DedeCms 2020-06-28 09:06:05 23
在分类信息列表页调用信息的小分类以及地区,并带上链接方法: 在分类信息标签文件(arclistsg.lib.php)内添加一个自定义标签:$row[‘cc‘]="".cn_substr($em_infotypes[$row[‘infotype‘]],$cclen).""; 然后在模板里面用[field:cc/]调用就可以啦 地区调用{dede:sqlsql="Select*From`dede_sys_enum`whereegrouplike‘nativeplace‘orderbydisorderasc,evalueasclimit0,24"} [field:ename/]

{/dede:sql}

第一步:找到\include\comm.func.PHP文件的“ //自定义函数接口” 上面加入以下代码:

  function GetInfoType($tid,$bigt)
  
{
  
global $dsql;
  
$typename = '';
  
$query = "Select ename From `dede_sys_enum` where evalue=$tid and egroup='$bigt'";
  
$dsql->Execute('ename',$query);
  
while($row = $dsql->GetArray('ename'))
  
{
  
$typename .= ($typename=='' ? $row['ename'] : ','.$row['ename']);
  
}
  
return $typename;
  
}
 
第二步:在前台页面调用代码如下:
{dede:arclistsg row=‘10’ typeid=‘18’ titlelen=‘50’ orderby=‘pubdate’ channelid=‘-8’ idlist=‘’}

[[field:infotype function=GetInfoType(@me,‘nativeplace’) /]] [field:title/] [[field:dateline function=“MyDate(‘m-d’,@me)”/]]

{/dede:arclistsg}

代码解释:

[field:nativeplace /] 这一个就是调用的文档联动菜单的枚举值。附加表存储的也就是联动类别里对应的枚举值的值而已。

function=GetInfoType 这个就是我们上面的自定义函数调用!这点是不能变的。

(@me,'nativeplace') 这 里面有两个变量,第一个为@me 它的意思是当前值,固定不变的,说白了就是告诉我们上面那个自定义函数要查询的枚举值的值。第二个,是联动菜单的缓存组 名,一般与前面的那个[field:nativeplace/]中的红色nativeplace 字段名保持一致即可。

Copyright ©2019-2020.Powered by©编程脚本学习网 苏ICP备17028197号