一、添加数据调用程序
二、source/language/block/ 目录下新建模块模板
source/language/lang_blockclass.php在模块管理里面根据情况创建模块
三、后台更新diy模块分类缓存
四、添加相应的模块模板
具体操作如下:
一、添加数据调用程序
1> 在 source/class/block/ 目录下新建文件夹如 :ranklist
2>
在ranklist文件夹下,新建 blockclass.php,内容如下:
<?php
if(!defined('IN_DISCUZ')) {
exit('Access Denied');
}
$blockclass = array('name' => lang('blockclass', 'blockclass_ranklist'));
?>
在ranklist文件夹下,新建 block_ranklistmember.php,内容如下:
<?php
if(!defined('IN_DISCUZ')) {
exit('Access Denied');
}
class block_ranklistmember extends discuz_block {
public $setting = array();
public function block_ranklistmember() {
$this->setting = array(.........); //这儿对setting进行初始化
}
public function name() {
// 这儿设置数据来源
return lang('blockclass', 'blockclass_ranklist_script_ranklist');
}
public function blockclass() {
// 这儿设置调用模块类型
return array('ranklist', lang('blockclass', 'blockclass_ranklist'));
}
public function fields() {
//这儿对fields进行设置,除了discuz本身支持的变量外,只有这儿设置的字段才可以在模板中调用。
$fields = array(.........);
return $fields;
}
public function getsetting() {
return $this->setting;
}
public function getdata($style, $parameter) {
$list = array(.........); // 这儿根据实际情况从数据库或许相应的数据
return array('html' => '', 'data' => $list);
}
}
?>
以上代码中 lang(....),均为语言处理,这里略过。还有 $setting,$fields,$list的格式可以参考 source/class/block/member/block_member.php中对应变量的格式。
二、source/language/block/ 目录下新建文件
<?php
if(!defined('IN_DISCUZ')) {
exit('Access Denied');
}
$lang = array(
'ranklist_fids' => '所在版块',
'ranklist_orderby' => '排序方式',
'ranklist_orderby_thread_num' => '按主题数倒序',
'ranklist_dateline' => '排序时间段',
'ranklist_deteline_nolimit' => '不限',
'ranklist_deteline_last_week' => '上周',
'ranklist_deteline_last_month' => '上个月',
'ranklist_startrow' => '起始数据行数',
'ranklist_items' => '显示数据条数',
'ranklist_items_comment' => '设置一次显示的主题条目数,请设置为大于 0 的整数',
);
?>
source/language/lang_blockclass.php
<?php
......
'blockclass_ranklist' => '排行榜类',
'blockclass_ranklist_forum_member' => '版块用户排行',
'blockclass_ranklist_script_forum_member' => '高级自定义',
'blockclass_ranklist_field_author' => '用户名',
'blockclass_ranklist_field_authorid' => '用户ID',
'blockclass_ranklist_field_avatar' => '用户头像',
'blockclass_ranklist_field_avatar_middle' => '用户头像(中)',
'blockclass_ranklist_field_avatar_big' => '用户头像(大)',
'blockclass_member_field_authorbio' => '用户自我介绍',
'blockclass_ranklist_field_thread_num' => '主题数',
....
?>
三、进入后台-工具-更新缓存,一定要勾选“DIY 模块分类缓存”,然后开始更新。
四、进入后台-门户-模块模板,添加对应的模板。
网友评论