最近经常碰到用户提问怎么样添加diy变量,下面简单介绍如何手动添加diy变量
进入文件夹:source\class\block 这些文件都是diy模块的处理文件。下面以给会员模块添加 email变量为例子
首先打开source/class/block/member/blocl_member.php。进入该文件之后,也行用户会头晕,这么多方法,哪些才是需要更改的呢。其实不用头疼,要添加字段在这个文件中有两处需要更改
fields()部分:
- function fields() {
- global $_G;
- $fields = array(
- 'url' => array('name' => lang('blockclass', 'blockclass_member_field_url'), 'formtype' => 'text', 'datatype' => 'string'),
复制代码 在fields部分最后添加
'email' => array('name' => lang('blockclass', 'blockclass_member_field_email'), 'formtype' => 'text', 'datatype' => 'string')
简单解释下每个地段 的含义:
name:在模板面板中显示的汉字,其中blockclass_member_field_email 是需要在source/lang/lang_blockclass.php添加字段
formtype: 表单类型 。类型有: text, textarea, date, title, summary, pic 详情请见portalcp_block_itemfields.htm
datatype:数据类型,类型有: string, int, date, title, summary, pic。详见 function_block.php 中 block_template 函数
getdata($style, $parameter)部分:
找到
- while($data = DB::fetch($query)){
- $resultuids[] = intval($data['uid']);
- $list[] = array(
- 'id' => $data['uid'],
- 'idtype' => 'uid',
- 'title' => $data['username'],
- 'url' => 'home.php?mod=space&uid='.$data['uid'],
- 'pic' => '',
- 'picflag' => 0,
- 'summary' => '',
- 'fields' => array(
- 'avatar' => avatar($data['uid'], 'small', true, false, false, $_G['setting']['ucenterurl']),
复制代码
在其中添加'email' =>$data['email'] 注意:如果这里的$data['email'] 没有值,需要用户做查询处理
如果想深入了解 diy第三方模块制作
请阅读:http://dev.discuz.org/wiki/index.php?title=%E7%AC%AC%E4%B8%89%E6%96%B9DIY%E6%A8%A1%E5%9D%97%E6%8B%93%E5%B1%95%E7%B1%BB%E7%9A%84%E5%BC%80%E5%8F%91
|