web建站教程
  1. 首页
  2. vuejs
  3. js
  4. 好玩
  5. seo教程
  6. 前端知识
  7. 百度echarts
  8. 更多
    php入门
    nodejs
    mockjs
    reactjs
    mysql
    wordpress
    织梦cms
    帝国cms
    git教程
    IT知识
    模板大全
    休息站

详解织梦模板DEDECMS核心类TypeLink.class.php功能分析

602 ℃
           

DedeCMS 核心类TypeLink.class.php摘要笔记,学习php就是借鉴与分析,让自己的掌握的更多。

注:'//+' 表示为本人另外加上的注释

Class TypeLink { var $typeDir; var $dsql; var $TypeID; //+ 类别ID var $baseDir; //+ 站点根网址 var $modDir; //+ 模板目录 var $indexUrl; //+ 主页链接地址 var $indexName; //+ 主页链接名 var $TypeInfos; //+ 类目信息 var $SplitSymbol; //+ 栏目位置的间隔符号 var $valuePosition; //+ 主页 > 国内 > 两会动态 > (带连接) var $valuePositionName; //+ 主页 > 国内 > 两会动态 > (不带连接) var $OptionArrayList; //+ 类目下拉列表

功能一,获得某类目的链接

代码如下:

//获得某分类连接的URL function GetOneTypeUrl($typeinfos) { return GetTypeUrl(); } //获得某个类目的超链接信息 function GetOneTypeLink($typeinfos) { $typepage = $this->GetOneTypeUrl($typeinfos); $typelink = "<a href='".$typepage."'>".$typeinfos['typename']."</a>"; return $typelink; }

功能二,获得某类目的链接列表 如:'类目一>类目二>' 这样的形式。

代码如下:

//islink 表示返回的列表是否带连接 //+ SplitSymbol 栏目位置的间隔符号 dede系统默认为'-' function GetPositionLink($islink=true) { //+ 获得 主页链接名 $indexpage = "<a href='".$this->indexUrl."'>".$this->indexName."</a>"; …… …… else { if($islink) { $this->valuePosition = $this->GetOneTypeLink($this->TypeInfos); if($this->TypeInfos['reid']!=0) { //调用递归逻辑 $this->LogicGetPosition($this->TypeInfos['reid'],true); } $this->valuePosition = $indexpage.$this->SplitSymbol.$this->valuePosition; return $this->valuePosition.$this->SplitSymbol; } else { $this->valuePositionName = $this->TypeInfos['typename']; if($this->TypeInfos['reid']!=0) { //调用递归逻辑 $this->LogicGetPosition($this->TypeInfos['reid'],false); } return $this->valuePositionName; } } } //获得某类目的链接列表,递归逻辑部分 function LogicGetPosition($id,$islink) { $this->dsql->SetQuery(" SQL查询语句 "); $tinfos = $this->dsql->GetOne(); if($islink) { //+ 列表带连接 $this->valuePosition = $this->GetOneTypeLink($tinfos).$this->SplitSymbol.$this->valuePosition; } else { //+ 列表不带连接 $this->valuePositionName = $tinfos['typename'].$this->SplitSymbol.$this->valuePositionName; } if($tinfos['reid']>0) { //+ 递归 $this->LogicGetPosition($tinfos['reid'],$islink); } }

功能三, 获得类别列表 高级搜索功能 即highsearch.php 即要用到此函数

代码如下:

//hid 是指默认选中类目,0 表示"请选择类目"或"不限类目" //oper 是用户允许管理的类目,0 表示所有类目 //channeltype 是指类目的内容类型,0 表示不限频道 function GetOptionArray($hid=0,$oper=0,$channeltype=0,$usersg=0) { return $this->GetOptionList($hid,$oper,$channeltype,$usersg); } function GetOptionList($hid=0,$oper=0,$channeltype=0,$usersg=0) { return $this->OptionArrayList; } //+ 为下级类目递归加上 '-' function LogicGetOptionArray($id, $step, $oper=0) { }

功能四,

//获得与该类相关的类目,本函数应用于模板标记{dede:channel}{/dede:channel}中 //$typetype 的值为: sun 下级分类 self 同级分类 top 顶级分类 代码如下:function GetChannelList($typeid=0,$reid=0,$row=8,$typetype='sun',$innertext='', $col=1,$tablewidth=100,$myinnertext='') { } }

php语法对index.php首页进行判断(根据需要显示不同页面)

html文本如何读取数据库代码示例

php表单提交报错显示适当的错误消息代码

php语法中sleep函数的基本用法

利用php语法中NOT IN排除多个字段功能

标签: class, php语法, typelink, var, 主页

上面是“详解织梦模板DEDECMS核心类TypeLink.class.php功能分析”的全面内容,想了解更多关于 织梦cms 内容,请继续关注web建站教程。

当前网址:https://ipkd.cn/webs_454.html

声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

当前位置: 网站首页 > 织梦cms
本文共计2507个字,预计阅读时长17分钟
生活小工具,收录了80多款小工具
上一篇: 推荐一款免费开源的屏幕录制软件——OBS Studio
下一篇: 推荐一个高质量的图片素材网站——Unsplash
x 打工人ai神器