在Discuz! X2.5中的編輯器中增加折疊代碼

1,後台管理——界面——編輯器設置——discuz!代碼

最下方新增spoiler代碼,可用打勾,顯示打勾,顯示順序視論壇情況而設置,圖標文件可用其默認的,也可以自行上傳,在imagescommon文件夾下,提交
2,點擊spoiler詳情,如下輸入:

標簽:spoiler

<div class=”spoiler”>
<div class=”spoilerheader”>
<input type=”button” class=”spoilerbutton” value=”{1}” onClick=”n =

this.parentNode.parentNode.lastChild;if(n.style.display == ‘none’) {n.style.display

= ‘block’;} else {n.style.display = ‘none’;} return false;”/> (點擊展開 / 收起)

</div><div class=”spoilerbody” style=”display: none;border-style:groove;padding-right:5px; “>
<table><td>
{2}
</td></table>
</div></div>

 

(仿官方網站spoiler代碼設置,細節文字及背景等可視情況修改,同html修改方法,寬度等方面可能需要視論壇情況修改)
解釋:(任意,如 折疊 等等)

參數個數:2

參數提示語:(任意,如

按鈕文字
折疊文字 等等)

嵌套次數:1

(我試驗過2層也可以,根據需求設置)

提交
3,在用戶組及版塊管理中,確認允許特定用戶組或特定版塊使用自定義discuz!代碼功能

4,由於DZ本身部分代碼有誤,導致自定義discuz!代碼中只要包含方括號[],則代碼無效,因此還需要修改這個文件:

打开source/function/cache/cache_bbcodes,找到

$regexp = array (
1 => “/[{bbtag}]([^”[]+?)[/{bbtag}]/is”,
2 => “/[{bbtag}=([‘”]?)([^”[]+?)([‘”]?)]([^”[]+?)[/{bbtag}]/is”,
3 => “/[{bbtag}=([‘”]?)([^”[]+?)([‘”]?),([‘”]?)([^”[]+?)([‘”]?)]([^”[]+?)[/{bbtag}]/is”
);

修改為

$regexp = array (
1 => “/[{bbtag}](.+?)[/{bbtag}]/is”,
2 => “/[{bbtag}=([‘”]?)(.+?)([‘”]?)](.+?)[/{bbtag}]/is”,
3 => “/[{bbtag}=([‘”]?)(.+?)([‘”]?),([‘”]?)(.+?)([‘”]?)](.+?)[/{bbtag}]/is”
);

包起來的內容可以是圖片,也可以是 youtube 影片……. 基本上語法都可以包進去

大家可以自己測試看看…….