发布于 2015-04-15 21:55:34 | 595 次阅读 | 评论: 0 | 来源: 网友投递
Discuz!社区论坛系统
Crossday Discuz! Board(简称 Discuz!)是北京康盛新创科技有限责任公司推出的一套通用的社区论坛软件系统。自2001年6月面世以来,Discuz!已拥有13年以上的应用历史和200多万网站用户案例,是全球成熟度最高、覆盖率最大的论坛软件系统之一。
大致可以分为以下三个步骤:
一、添加数据调用程序
二、后台更新diy模块分类缓存
三、添加相应的数据模板
具体操作如下:
一、添加数据调用程序
1> 在 source/class/block/ 目录下新建文件夹如 :news
2>
在news文件夹下,新建 blockclass.php,内容如下:
<?php
if(!defined(‘IN_DISCUZ‘)) {
exit(‘Access Denied‘);
}
$blockclass = array(
‘name‘ => lang(‘blockclass‘, ‘blockclass_resource‘),
);
?>
再在news文件夹下,新建 block_news.php,内容如下:
<?php
if(!defined(‘IN_DISCUZ‘)) {
exit(‘Access Denied‘);
}
class block_news extends discuz_block {
public $setting = array();
public function block_news() {
$this->setting = array(.........); //这儿对setting进行初始化
}
public function name() {
// 这儿设置数据来源
return lang(‘blockclass‘, ‘blockclass_news_script_news‘);
}
public function blockclass() {
// 这儿设置调用模块类型
return array(‘news‘, lang(‘blockclass‘, ‘blockclass_news‘));
}
public function fields() {
$fields = array(.........); //这儿对fields进行设置,除了discuz本身支持的变量外,只有这儿设置的字段才可以在模板中调用。
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中对应变量的格式。
二、进入后台-工具-更新缓存,一定要勾选“DIY 模块分类缓存”,然后开始更新。
三、进入后台-门户-模块模板,在这个下添加对应的模板。
。