首頁 >CMS教程 >帝國CMS >帝國CMS怎麼取得目前清單ID

帝國CMS怎麼取得目前清單ID

藏色散人
藏色散人原創
2019-12-06 09:08:523079瀏覽

帝國CMS怎麼取得目前清單ID

帝國CMS怎麼取得目前清單ID?

本文實例講述了帝國CMS在自訂清單中取得目前清單ID的方法。分享給大家供大家參考,具體如下:

推薦學習《帝國cms教程

今天用帝國CMS做一個專案時,發現帝國自訂清單中無法取得目前自訂清單的ID。分析帝國源碼後以現,帝國預設傳出的值為0。以下簡單記錄如何透過修改原始碼實現「帝國CMS自訂清單取得目前清單ID」

上面所提到的項目功能簡介:

使用者以自訂清單功能建立了大量的自訂列表,然後在這些自訂列表中要取得到同分類自訂列表名稱,並且當前欄位名稱的樣式要加上特定的CSS樣式。

自訂清單範本程式碼片段

程式碼如下:

[e:loop={'select listid,listname,filepath from [!db.pre!]enewsuserlist where classid=1',100,24}]
<li<?=($bqr[listid]==$GLOBALS[navclassid]?&#39; class="this"&#39;:&#39;&#39;)?>><?=$bqr[listname]?></li>
[/e:loop]

預設請況下$GLOBALS[navclassid] 的值是為空的, 所以我們只要修改程序將目前自訂清單的ID值賦給$GLOBALS[navclassid]即可

帝國原始程式修改

透過phpxref工具分析程式執行流程發現,產生自訂資訊清單的函數為ReUserlist(),ReUserlist()進一步呼叫ListHtml()函數產生資訊列表,並傳入$enews事件為4,至此即可透過ListHtml()函數傳入列表ID。

開啟(/e/class/functions.php) 找到函數ListHtml(可搜尋function ListHtml 快速尋找) 中找到如下程式碼

程式碼如下:

$GLOBALS[&#39;navclassid&#39;]=$classid;

改為

程式碼如下:

$GLOBALS[&#39;navclassid&#39;]=$enews==4?$userlistr[&#39;listid&#39;]:$classid;

儲存(注意檔案編碼問題)

重新產生自訂列表,所需功能已實現!

希望本文所述對大家基於帝國CMS的網站程式設計有所幫助。

以上是帝國CMS怎麼取得目前清單ID的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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