首頁 >CMS教程 >DEDECMS >dedecms 5.6 首頁怎麼呼叫連動類別

dedecms 5.6 首頁怎麼呼叫連動類別

藏色散人
藏色散人原創
2019-12-14 10:29:272081瀏覽

dedecms 5.6 首頁怎麼呼叫連動類別

dedecms 5.6 首頁怎麼呼叫連動類別?

實作方法: 

第一步:channelunit.func.php中加入下列函數 

//参数说明:第1个参数是从信息表里读取出来的类别ID,第2个参数是联动菜单类别 //这样这个函数就不限于只调用分类信息的信息类别了,还可以用于其它地方 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; } //------------------ Add By CxChina.Com ----- End ------------------------- 复制代码 (V5.3)加到\include\common.func.php文件的 class="quote"> 
//自定义函数接口

上面。 

推薦學習:織夢cms

第二步:請在前台頁面上使用 class="quote"> 

{dede:arclist row=14 titlelen=32 noflag='h' addfields='nativeplace' channelid='1'} 
<li>[[field:nativeplace function=GetInfoType(@me,&#39;nativeplace&#39;)/]] <a href="[field:arcurl/]">[field:title/]</a></li> 
{/dede:arclist}

來調試。

程式碼解釋: 

1.addfields='nativeplace' channelid='1'這個是呼叫的附加表格欄位; 

#①. 為什麼要呼叫附加表格欄位? 

因為連動選單的值就是存到附加表裡面的,你仔細想想你有沒有自己加過自訂連動選單欄位! 

②. channelid參數是什麼意思? 

告訴解析函數你的附加表在哪個表!這裡告訴的是附加表的ID,那麼內容模型裡面的ID對應的附加表你相信程式會自動幫你找到的。 

2.[field:nativeplace /] 這個就是所呼叫的文件連動選單的枚舉值。附加表儲存的也就是連動類別裡對應的枚舉值的值而已。 

3. function=GetInfoType 這個就是我們上面的自訂函數呼叫!這點是不能變的。

4.(@me,'nativeplace') 這裡面有兩個變量,第一個為@me 它的意思是當前值,固定不變的,說白了就是告訴我們上面那個自定義函數要查詢的枚舉值的值。第二個,是連動選單的快取組名,一般與前面的那個[field:nativeplace/]中的紅色nativeplace 欄位名稱保持一致即可。

以上是dedecms 5.6 首頁怎麼呼叫連動類別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn