織夢DEDECMS核心類TypeLink.class.php
推薦學習:織夢cms
DedeCMS 核心類TypeLink.class.php摘要筆記,學習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>".$typeinfos['typename']."</a>";?? return?$typelink;?? }
功能二,獲得某類目的鏈接列表 如:’類目一>類目二>’ 這樣的形式。?
代碼如下:
//islink?表示返回的列表是否帶連接?? //+?SplitSymbol?欄目位置的間隔符號?dede系統默認為'-'?? function?GetPositionLink($islink=true)?? {?//+?獲得?主頁鏈接名?? $indexpage?=?"<a>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='')?? {?? }?? }
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END