讓織夢主頁可以呼叫副欄目(副標題為9個之內)

2021-06-05 19:26:51 字數 2835 閱讀 5214

**找了很久 關於織夢呼叫副欄目的例子 **為

開啟/include/taglib/arclist.lib.php,**約位於295-296行(我目前用的dedecms最新版 5.7 sp1),查詢以下兩行**:

if($crossid=='') $orwheres = ' arc.typeid in ('.getsonids($typeid).')';

else $orwheres = ' arc.typeid in ('.getsonids($typeid).','.$crossid.')';

將其替換成以下**:

if($crossid=='') $orwheres = ' (arc.typeid in ('.getsonids($typeid).') or arc.typeid2 in ('.getsonids($typeid).')) ';

else $orwheres = ' (arc.typeid in ('.getsonids($typeid).','.$crossid.') or arc.typeid2 in ('.getsonids($typeid).','.$crossid.')) ';

ok,這樣就改完了,儲存後如果你是生成靜態的,請生成相關的。如果是動態的,請更新系統快取。然後就可以看到效果了。

以上**有乙個問題 大家想下

typeid2

欄位中為以「,」分割的字串 和後面的 in集合比較會出現未知結果。 因此解決它可以寫乙個 類似 split的函式來解決它 但是 該死的mysql還不支援 返回表結構的函式(別噴我 我的mysql是 門外漢的水平)  沒辦法 咱笨 啊 用死辦法 寫 乙個 死欄目的比較  反正生成靜態頁面只 呼叫一次慢就慢吧 。

**如下

if($crossid=='') $orwheres = ' (arc.typeid in ('.getsonids($typeid).') or ( substring_index(substring_index(arc.typeid2,\',\',1),\',\',-1) in ('.getsonids($typeid).') or  substring_index(substring_index(arc.typeid2,\',\',2),\',\',-1) in ('.getsonids($typeid).') or  substring_index(substring_index(arc.typeid2,\',\',3),\',\',-1) in ('.getsonids($typeid).') or  substring_index(substring_index(arc.typeid2,\',\',4),\',\',-1) in ('.getsonids($typeid).') or  substring_index(substring_index(arc.typeid2,\',\',5),\',\',-1) in ('.getsonids($typeid).') or  substring_index(substring_index(arc.typeid2,\',\',6),\',\',-1) in ('.getsonids($typeid).') or  substring_index(substring_index(arc.typeid2,\',\',7),\',\',-1) in ('.getsonids($typeid).') or  substring_index(substring_index(arc.typeid2,\',\',8),\',\',-1) in ('.getsonids($typeid).') or  substring_index(substring_index(arc.typeid2,\',\',9),\',\',-1) in ('.getsonids($typeid).')))';

else $orwheres = ' (arc.typeid in ('.getsonids($typeid).','.$crossid.') or ( substring_index(substring_index(arc.typeid2,\',\',1),\',\',-1) in ('.getsonids($typeid).','.$crossid.') or  substring_index(substring_index(arc.typeid2,\',\',2),\',\',-1) in ('.getsonids($typeid).','.$crossid.') or  substring_index(substring_index(arc.typeid2,\',\',3),\',\',-1) in ('.getsonids($typeid).','.$crossid.') or  substring_index(substring_index(arc.typeid2,\',\',4),\',\',-1) in ('.getsonids($typeid).','.$crossid.') or  substring_index(substring_index(arc.typeid2,\',\',5),\',\',-1) in ('.getsonids($typeid).','.$crossid.') or  substring_index(substring_index(arc.typeid2,\',\',6),\',\',-1) in ('.getsonids($typeid).','.$crossid.') or  substring_index(substring_index(arc.typeid2,\',\',7),\',\',-1) in ('.getsonids($typeid).','.$crossid.') or  substring_index(substring_index(arc.typeid2,\',\',8),\',\',-1) in ('.getsonids($typeid).','.$crossid.') or  substring_index(substring_index(arc.typeid2,\',\',9),\',\',-1) in ('.getsonids($typeid).','.$crossid.'))) ';

織夢擴充套件 讓織夢的任何頁面都能呼叫到文章內容

很多人可能想在首頁或者其他欄目頁呼叫某特定文章的全部內容,那麼因為織夢的標籤是建立在文章頁面,也就是有隱藏的文章的id變數 那麼在首頁或者欄目頁就只能通過乙個函式將id轉換成文章內容。那麼因為織夢的函式擴充套件全部是放在 根目錄下的include extend.fun.php裡面 function ...

常用織夢呼叫方法

1 這是呼叫當前欄目的名稱 2 field typename 這是呼叫該頂級頻道下所有字欄目,row代表呼叫5條 3 field typename 表示呼叫指定id的欄目,不過只能呼叫乙個,要想多個呼叫就只能重複多次呼叫該標籤 第一種方法 推薦,可加省略號 field description fun...

dedecms織夢 標籤呼叫

後台登陸 127.0.0.1 demo dede login.php 更改模板 系統 系統基本引數首頁 列表頁,欄目頁 詳情頁 文章頁 呼叫上級欄目 開啟 include common.func.php 檔案,最後加上方法 獲取頂級欄目名 function gettoptypename id els...