天天看點

Discuz! X2/X2.5 插件制…

當您在編寫背景時,需要對幾個常用背景顯示函數進行詳細的了解

下面的函數講解按照重要性、常用性進行排序

目錄

showsetting()表單顯示

cpmsg()提示消息

showformheader()建立表單頭

showformfooter()建立表單尾

showtableheader()建立表格頭

showtablefooter()建立表格尾

showtablerow()建立清單式頁面的行

showsubmit()建立送出按鈕

showhiddenfields()建立隐藏表單域

showsubmenu()二級導航欄顯示

shownav()面包屑導航欄顯示及二級導航欄标題

showsetting()表單顯示

傳回值:無

參數:

$setname - 指定輸出标題,如:setting_basic_bbname, 自動比對描述文字為:setting_basic_bbname_comment,comment形式文字可以在./source/language/lang_admincp.php語言包中添加

$varname - 指定表單的name值,如settingnew[bbname]

$value - 指定表單預設值\變量

$type - 表單樣式

radio單選

text文本、password密碼、number數字

file上傳檔案

filetext 上傳檔案或線上檔案切換型表單

textarea 多行文本

select 選擇框

mradio 進階單選模式

mcheckbox 進階多選模式

binmcheckbox 二進制數值多選模式

mselect 進階選擇框模式

color 顔色選擇

calendar 日期選擇

multiply多表單型,daterange時間範圍

其他未在上述樣式中出現的$type均獨立輸出

$disabled - 是否不可修改

$hidden - 是否隐藏

$comment - 強制描述文字

$extra - 表單擴充屬性

$setid - 用于拼接表單外層Div的id

使用方法舉例:

以文本形式輸出表單(站點名稱 text):

showsetting('setting_basic_bbname', 'settingnew[bbname]', $setting['bbname'], 'text');

以單選形式輸出表單(顯示授權資訊連結 radio):

showsetting('setting_basic_boardlicensed', 'settingnew[boardlicensed]', $setting['boardlicensed'], 'radio');

以多行文本形式輸出表單(網站第三方統計代碼 textarea):

showsetting('setting_basic_stat', 'settingnew[statcode]', $setting['statcode'], 'textarea');

以進階單選形式輸出表單(新使用者注冊驗證 mradio)

showsetting('setting_access_register_verify', array('settingnew[regverify]', array(

array(0, $lang['none'], array('regverifyext' => 'none')),

array(1, $lang['setting_access_register_verify_email'], array('regverifyext' => '')),

array(2, $lang['setting_access_register_verify_manual'], array('regverifyext' => ''))

)), $setting['regverify'], 'mradio');

以進階多選形式輸出表單('允許新使用者注冊 mcheckbox)

showsetting('setting_access_register_status', array('settingnew[regstatus]', array(

array('open', $lang['setting_access_register_open']),

array('invite', $lang['setting_access_register_invite'], 'showinvite'),

$_G['setting']['connect']['allow'] ? array('connect', $lang['setting_access_register_connect'], 'showconnect') : array(),

)), $regstatus, 'mcheckbox');

cpmsg()提示消息

傳回值:無

參數:

$message - lang_admincp_msg.php 語言包中需要輸出的key

$url - 提示資訊後跳轉的頁面,留白則傳回上一頁

$type - 特殊提示資訊時指定頁面的提示樣式,可選參數:succeed、error、download、loadingform

$values - 為語言包中的變量關鍵詞指定值,以數組形式輸入

$extra - 消息文字擴充

$halt - 是否輸出“Discuz! 提示”标題

使用方法舉例:

成功提示資訊

cpmsg('tasks_installed', 'action=tasks&operation=type', 'succeed');

錯誤提示資訊,并傳遞變量(cachethreaddir為要傳遞如語言包中的變量關鍵詞)

cpmsg('cachethread_dir_noexists', '', 'error', array('cachethreaddir' => $settingnew['cachethreaddir']));

showformheader()建立表單頭

傳回值:無

參數:

$action - 表單action的一部分,程式會自動添加 admincp.php?action= 這些内容

$extra - 表單附加屬性,可以是樣式等

$name - 表單的name和id

$method - 表單送出方式

使用方法舉例:

合并版塊表單:

showformheader('forums&operation=merge');

showformfooter()建立表單尾

無傳回值、無參數

用于接上showformheader()函數進行收尾工作

showtableheader()建立表格頭

傳回值:無

參數:

$title - 如果輸入title則顯示标題,class為header,否則僅顯示一個table頭

$classname - 定義此輸出表格的CSS樣式

$extra - 表格擴充屬性

$titlespan - 表格列數

使用方法執行個體:

showtableheader('forums_edit_posts', 'nobottom');

showtablefooter()建立表格尾

用于接上showformheader()函數進行收尾工作

showtablerow()建立清單式頁面的行

傳回值:有

參數:

$trstyle - 此行 tr 标簽的格式定義,如 class="partition"

$tdstyle - TD 标簽的格式定義,如 class,colspan 等

$tdtext - TD内顯示的内容

$return 是否傳回值

此函數多用于循環中,用來逐行建立一個有規律的資料清單如:論壇版塊清單等

使用方法舉例 ./source/admincp/admincp_forums.php

showtablerow('', array('class="td25"', 'class="td28"'), array(

' ',

'',

"$mod[username]",

$modgroups[$mod['groupid']],

cplang($mod['inherited'] ? 'yes' : 'no'),

));

showsubmit()建立送出按鈕

傳回值:無

$name - 定義送出按鈕的name值

$value - 定義按鈕的文字值

$before - 根據此按鈕之前的屬性來輸出樣式

$after - 根據此按鈕之後的屬性來輸出樣式

$floatright - 是否有浮動

$entersubmit - 是否使用回車定義按鈕送出動作

showhiddenfields()建立隐藏表單域

傳回值:無

參數:

$hiddenfields 以數組形式傳入,循環輸出隐藏表單域

showsubmenu()二級導航欄顯示

傳回值:無

參數:

$title - 二級導航的目前欄标題

$menus - 多個子導航

使用方法舉例:

背景-使用者-會員管理

showsubmenu('nav_members', array(

array('search', 'members&operation=search', 1),

array('clean', 'members&operation=clean', 0),

array('nav_repeat', 'members&operation=repeat', 0),

));

shownav()面包屑導航欄顯示及二級導航欄标題

傳回值:無

參數:

$header - 導航起點

$menu - 子導航标題

$nav - 面包屑導航第三層

使用方法舉例:

背景-營運-電子商務

shownav('extended', 'nav_ec', 'nav_ec_config');

以上列舉的均為最常用背景函數,仔細了解這些函數的使用已經能夠滿足您對 Discuz! X 系列版

注:當中所有的函數都在function_admincp.php檔案裡(x2.5版本)

繼續閱讀