Discuz! X2.5 添加自定义数据调用模块(简单方法)

本文介绍如何为Discuz! X2.5添加自定义数据调用模块,通过三步实现门户模块的DIY,包括新增数据调用程序、更新缓存及模板配置。

转:http://521-wf.com/archives/46.html

Discuz! X2.5 添加自定义数据调用模块(简单方法)

Discuz!X系列的diy功能还是相当不错的,在对其进行二次开发的过程中,或许需要加入新的数据调用模块,这样可以使你开发的功能模块也像原来的模块一样,只需要点点鼠标,填写一些简单的信息,就可以在各个页面的各个位置显示你想显示的数据啦。

以下就目前最新版X2.5做一个简答的介绍:
大致可以分为以下三个步骤:
一、添加数据调用程序
二、后台更新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 模块分类缓存”,然后开始更新。

三、进入后台-门户-模块模板,在这个下添加你对应的模板。

以上,只是简单说明,~~,因时间有限,只能到此为止啦。。。。。

标签: Discuzblock数据调用

转载于:https://www.cnblogs.com/actorai/p/4168432.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值