dedecms自定义获取上级栏目名称和链接的标签 (返回上级栏目按钮)
2016-01-22 16:10
656 查看
<?php if(!defined('DEDEINC')) exit('Request Error!'); function lib_type2(&$ctag,&$refObj) { global $dsql,$envs; $attlist='typeid|0'; FillAttsDefault($ctag->CAttribute->Items,$attlist); extract($ctag->CAttribute->Items, EXTR_SKIP); $innertext = trim($ctag->GetInnerText()); if($typeid==0) { $typeid = ( isset($refObj->TypeLink->TypeInfos['topid']) ? $refObj->TypeLink->TypeInfos['topid'] : $envs['typeid'] ); } //if(empty($typeid)) return ''; if(empty($typeid)) $typeid=$refObj->TypeLink->TypeInfos['id']; //$row=null; //if() $row = $dsql->GetOne("Select topid,typedir,isdefault,defaultname,ispart,namerule2,typename,moresite,siteurl,sitepath From `#@__arctype` where id='$typeid' "); if(!is_array($row)) return 'sdfsd'; if(trim($innertext)=='') $innertext = GetSysTemplets("part_type_list.htm"); $dtp = new DedeTagParse(); $dtp->SetNameSpace('field','[',']'); $dtp->LoadSource($innertext); if(!is_array($dtp->CTags)) { unset($dtp); return ''; } else { $row['typelink'] = GetTypeUrl($row['topid'],MfTypedir($row['typedir']),$row['isdefault'], $row['defaultname'],$row['ispart'],$row['namerule2'],$row['siteurl'],$row['sitepath']); foreach($dtp->CTags as $tagid=>$ctag) { if(isset($row[$ctag->GetName()])) $dtp->Assign($tagid,$row[$ctag->GetName()]); } $revalue = $dtp->GetResult(); unset($dtp); return $revalue; } } ?>
把这个命名为type2.lib.php放在include/taglib目录下面,让后再模板里面调用:
{dede:type2}
<li><a href="[field:typelink/]">[field:typename/]</a></li>
{/dede:type2}
相关文章推荐
- Git 分支的理解
- oracle linux上yum设置及使用
- SGU 326 Perspective (网络流)
- Linux中JDK1.6的安装和配置方法
- Noi2001食物链
- 把$date = '08/26/2003' 转换成2003/08/26
- (二)在Android硬件抽象层增加接口模块访问硬件驱动程序
- soot的安安装与使用
- 关于virtualenv,python环境引用,pycharm相关配置的使用讨论
- libVLC 事件类型 收集
- 1877: [SDOI2009]晨跑 费用流
- [IOS]二维曲线图表
- WINDOWS API——OPENCLIPBOARD——剪切板
- WKWebView 加载Html
- PPT扁平化风格设计手册
- Android mtk6572 Camera 录制更大视频文件的修改
- seaJs原理分析和源码解读(上)
- 程序员常用Photoshop工具教程 (格式转换,裁剪)
- Usb Audio Device Descriptor(3) Input Terminal Descriptor
- 监控InfoPackage从ECC抽数的记录