久久久久av_欧美日韩一区二区在线_国产精品三区四区_日韩中字在线
Discuz! 官方交流社區
標題:
X5 中自定義自己的設置項
[打印本頁]
作者:
monkeye
時間:
2024-11-5 10:04
標題:
X5 中自定義自己的設置項
本著將開放進行到底的方針,X5 這次玩個大的,其實也不算太大......
這次講一講設置項,寫過 Discuz! X 后臺的開發者估計都熟悉 showsetting 這個函數。沒錯,是輸出后臺表單設置項的函數,他可以根據參數輸出 radio、checkbox、textarea、file......(不一一列舉了)等等類型的設置項。但是有一件事你想過沒有,這么多的設置項依然不滿足你的需求,為啥,見下面2個圖:
[attach]32713[/attach]
是的,配色需要顯示下顏色,甚至直接可以顯示多個內容的設置。
是的,在 X5 里你的夢想實現了!
X5 中你可以自定義自己的設置項,我們稱呼為設置項組件。
要寫一個設置項組件插件,你需要在插件目錄 admin/component/ 目錄下添加文件。文件名為 component_xxxx.php 格式,內容如下:
按照前幾天講的內容,x5 新規范!命名空間~~懂!?
<?php
namespace sample\admin;
if(!defined('IN_DISCUZ')) {
exit('Access Denied');
}
class component_test {
var $name = '自定義顏色';
復制代碼
show(&$var, &$extra) 方法是編輯時需要展示的內容,你只需要把自定義的 HTML 內容寫在這里,用下面的方法就可以顯示為自定義的設置項組件了
showcomponent('測試1', 'abc1', 'yellow', 'sample:component_test');
復制代碼
對于復雜的設置項,我們還支持進行序列和反序列處理,比如剛才圖中的多個 <input>
// 數據提交入口后進行打包
function serialize($params, &$value) {
...
}
// 數據重新編輯前進行解包
function unserialize($params, &$value) {
...
}
復制代碼
但這時就需要在輸入提交入庫前用 serializecomponent() 打包序列化一下。
然后~~沒了,要不要去試一把先?
作者:
科站網
時間:
2024-11-5 10:06
沙發位已占
作者:
有愛設計
時間:
2024-11-5 10:08
小板凳來了
作者:
凹凸曼
時間:
2024-11-5 10:08
作者:
uu8651
時間:
2024-11-5 15:58
沙發位已占
歡迎光臨 Discuz! 官方交流社區 (http://www.9999xn.com/)
Powered by Discuz! W1.0