前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Discuz后台常用函数详解

Discuz后台常用函数详解

作者头像
96php.cn
发布2018-04-28 14:51:13
3.3K0
发布2018-04-28 14:51:13
举报
文章被收录于专栏:www.96php.cnwww.96php.cn

当您在编写后台时,需要对几个常用后台显示函数进行详细的了解 

下面的函数讲解按照重要性、常用性进行排序

目录


代码语言:javascript
复制
showsetting()表单显示 
cpmsg()提示消息 
showformheader()创建表单头 
showformfooter()创建表单尾 
showtableheader()创建表格头 
showtablefooter()创建表格尾 
showtablerow()创建列表式页面的行 
showsubmit()创建提交按钮 
showhiddenfields()创建隐藏表单域 
showsubmenu()二级导航栏显示 
shownav()面包屑导航栏显示及二级导航栏标题

showsetting()表单显示

返回值:无 

参数:

代码语言:javascript
复制
$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):

代码语言:javascript
复制
showsetting('setting_basic_bbname', 'settingnew[bbname]', $setting['bbname'], 'text');

以单选形式输出表单(显示授权信息链接 radio):

代码语言:javascript
复制
showsetting('setting_basic_boardlicensed', 'settingnew[boardlicensed]', $setting['boardlicensed'], 'radio');

以多行文本形式输出表单(网站第三方统计代码 textarea):

代码语言:javascript
复制
showsetting('setting_basic_stat', 'settingnew[statcode]', $setting['statcode'], 'textarea');

以高级单选形式输出表单(新用户注册验证 mradio) :

代码语言:javascript
复制
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):

代码语言:javascript
复制
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()提示消息

返回值:无 

参数:

代码语言:javascript
复制
$message - lang_admincp_msg.php 语言包中需要输出的key 
$url - 提示信息后跳转的页面,留空则返回上一页 
$type - 特殊提示信息时指定页面的提示样式,可选参数:succeed、error、download、loadingform 
$values - 为语言包中的变量关键词指定值,以数组形式输入 
$extra - 消息文字扩展 
$halt - 是否输出“Discuz! 提示”标题

使用方法举例: 


成功提示信息:

代码语言:javascript
复制
cpmsg('tasks_installed', 'action=tasks&operation=type', 'succeed');

错误提示信息,并传递变量(cachethreaddir为要传递如语言包中的变量关键词) 

代码语言:javascript
复制
cpmsg('cachethread_dir_noexists', '', 'error', array('cachethreaddir' => $settingnew['cachethreaddir']));

showformheader()创建表单头

返回值:无 

参数:

代码语言:javascript
复制
$action - 表单action的一部分,程序会自动添加 admincp.php?action= 这些内容 
$extra - 表单附加属性,可以是样式等 
$name - 表单的name和id 
$method - 表单提交方式

使用方法举例:


合并版块表单:

代码语言:javascript
复制
showformheader('forums&operation=merge');

showformfooter()创建表单尾

无返回值、无参数 

用于接上showformheader()函数进行收尾工作


showtableheader()创建表格头

返回值:无 

参数:

代码语言:javascript
复制
$title - 如果输入title则显示标题,class为header,否则仅显示一个table头 
$classname - 定义此输出表格的CSS样式 
$extra - 表格扩展属性 
$titlespan - 表格列数

使用方法实例:

代码语言:javascript
复制
showtableheader('forums_edit_posts', 'nobottom');

showtablefooter()创建表格尾

用于接上showformheader()函数进行收尾工作 


showtablerow()创建列表式页面的行

返回值:有 

参数: 

代码语言:javascript
复制
$trstyle - 此行 tr 标签的格式定义,如 class="partition" 
$tdstyle <array> - TD 标签的格式定义,如 class,colspan 等 
$tdtext <array> - TD内显示的内容 
$return 是否返回值

此函数多用于循环中,用来逐行创建一个有规律的数据列表如:论坛版块列表等 

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

代码语言:javascript
复制
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()创建提交按钮

返回值:无 

参数:

代码语言:javascript
复制
$name - 定义提交按钮的name值 
$value - 定义按钮的文字值 
$before - 根据此按钮之前的属性来输出样式 
$after - 根据此按钮之后的属性来输出样式 
$floatright - 是否有浮动 
$entersubmit - 是否使用回车定义按钮提交动作

showhiddenfields()创建隐藏表单域

返回值:无 

参数:

代码语言:javascript
复制
$hiddenfields <array> 以数组形式传入,循环输出隐藏表单域

showsubmenu()二级导航栏显示

返回值:无 

参数: 

代码语言:javascript
复制
$title - 二级导航的当前栏标题 
$menus <array> - 多个子导航

使用方法举例: 

后台-用户-会员管理 

代码语言:javascript
复制
showsubmenu('nav_members', array(
array('search', 'members&operation=search', 1),
array('clean', 'members&operation=clean', 0),
array('nav_repeat', 'members&operation=repeat', 0),
));

shownav()面包屑导航栏显示及二级导航栏标题

返回值:无 

参数: 

代码语言:javascript
复制
$header - 导航起点 
$menu - 子导航标题 
$nav - 面包屑导航第三层
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017年8月16日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
Discuz!
Discuz! 是全球领先的论坛社区应用系统,自2001年6月面世以来,服务超过300多万网站用户案例。现在,借助 Discuz! ,您不仅可以使用搭建传统的社区论坛,更可轻易的构建面向移动互联网时代的私域流量和社交圈子类的应用,并快速启动业务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档