Discuz二次开发之后台开发常用函数
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 <array> – TD 标签的格式定义,如 class,colspan 等
- $tdtext <array> – TD内显示的内容
- $return 是否返回值
- 此函数多用于循环中,用来逐行创建一个有规律的数据列表如:论坛版块列表等
- 使用方法举例 ./source/admincp/admincp_forums.php
showtablerow('', array('class="td25"', 'class="td28"'), array(
'<input type="checkbox" class="checkbox" name="delete[]" value="'.$mod[uid].'"'.($mod['inherited'] ? ' disabled' : '').' />',
'<input type="text" class="txt" name="displayordernew['.$mod[uid].']" value="'.$mod[displayorder].'" size="2" />',
"<a href=\"".ADMINSCRIPT."?mod=forum&action=members&operation=group&uid=$mod[uid]\" target=\"_blank\">$mod[username]</a>",
$modgroups[$mod['groupid']],
cplang($mod['inherited'] ? 'yes' : 'no'),
));
showsubmit()创建提交按钮
- 返回值:无
- $name – 定义提交按钮的name值
- $value – 定义按钮的文字值
- $before – 根据此按钮之前的属性来输出样式
- $after – 根据此按钮之后的属性来输出样式
- $floatright – 是否有浮动
- $entersubmit – 是否使用回车定义按钮提交动作
showhiddenfields()创建隐藏表单域
- 返回值:无
- 参数:
- $hiddenfields <array> 以数组形式传入,循环输出隐藏表单域
showsubmenu()二级导航栏显示
- 参数:
- $title – 二级导航的当前栏标题
- $menus <array> – 多个子导航
- 使用方法举例:
- 后台-用户-会员管理
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');
引用:官方文档https://www.discuz.net/library/library/plug/construct/construct_adm.htm#hanshu

浙公网安备 33010602011771号