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

转: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数据调用

时间: 2024-08-05 19:35:37

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

Discuz! X2.5 添加自定义数据调用模块

大致可以分为以下三个步骤:一.添加数据调用程序二.后台更新diy模块分类缓存三.添加相应的数据模板 具体操作如下:一.添加数据调用程序1> 在  source/class/block/ 目录下新建文件夹如 :news2>在news文件夹下,新建 blockclass.php,内容如下: <?phpif(!defined('IN_DISCUZ')) {    exit('Access Denied');}$blockclass = array(    'name' => lang('

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

Discuz!X系列的diy功能还是相当不错的,在对其进行二次开发的过程中,或许需要加入新的数据调用模块,这样可以使你开发的功能模块也像原来的模块一样,只需要点点鼠标,填写一些简单的信息,就可以在各个页面的各个位置显示你想显示的数据啦. 以下就目前最新版X2.5做一个简答的介绍:大致可以分为以下三个步骤:一.添加数据调用程序二.后台更新diy模块分类缓存三.添加相应的数据模板 具体操作如下:一.添加数据调用程序1> 在  source/class/block/ 目录下新建文件夹如 :news2>

ECMall的MySQL数据调用的简单方法

很多ecmall开发者会问,怎么使用Ecmall的mysql类库进行数据调用.从原理上来讲Ecmall的数据调用是以数据模块+模块类库的方式进行mysql数据调用的,所有数据模块都存储在includesmodels 目录下,这些调用对于初学者来讲是比较复杂的,例如商品的数据调用函数,不能用在店铺的数据调用上,每个数据表都有自己的函数自己的类库和少量的公共类库.因此初学者来讲,调用mysql数据很困难. 现在讲解一个简单的调用方法能满足95%以上的mysql数据调用请求.足够对ecmall进行二次

android开发教程:android调用activity简单方法

在没看麦子学院的教学视频之前,觉得在一个apk中调用另外一个apk中的activity是件非常麻烦的事情,有时候很害怕遇见这类问题,但是看了android开发教程视频之后,觉得这本来是一件很简单的事情,所以写篇小文章供参考. 系统提供了很多可以直接调用的Activity,通过指定的Intent就可以调用,比如打开搜索的: Java代码 1. Intent intent = new Intent(Intent.ACTION_WEB_SEARCH); 2. intent.putExtra(Searc

LoadRunner脚本关联动态数据的最简单方法

为什么要关联动态数据呢?举个例子,在对我们平台的工作流性能测试时, 在待办任务里面选择一条记录执行发送操作,LoadRunner VuGen会详细记录下来流程发送操作的细节,但在回放脚本的时候会有问题.待办任务里面找不到那条记录了,已经发送到下一个环节了.另一个更易理解的例 子,在初始化查询页面,选择一条记录进行删除,录下脚本进行回放的时候会出错,记录已经删除了,回放脚本的时候服务器返回的记录不再包含那条记录,再向服 务器发送删除那条记录的请求,就报错了.关联动态数据需要我们在脚本中设置一个变量

如何简单粗暴的搞定dubbo调用模块

dubbo调用模块核心功能是发起一个远程方法的调用并顺利拿到返回结果,其体系组成如下:1. 透明代理:通过动态代理技术,屏蔽远程调用细节以提高编程友好性.2. 负载均衡:当有多个提供者是,如何选择哪个进行调用的负载算法.3. 容错机制:当服务调用失败时采取的策略4. 调用方式:支持同步调用.异步调用5. 结果获取:指同步等待结果返回,还是异步通过回调通知获取结果. 原文地址:https://www.cnblogs.com/BruceV/p/12093967.html

Discuz!X2 附件分表与主题图片表解析

1.背景: 在 Discuz! X2 中,将原有的1个附件表和1个附件描述表合并,然后分为了 11 个表,在很大程度上加强了论坛对于附件数据量的支持,同时减轻在附件记录非常多的情况下,造成服务器负载比较高的问题. 同时增加了一个主题图片表,如果一个主题的楼主贴包含有图片附件,则将会将这些附件中宽度最大的图写入到这个表. 2.附件表解释: pre_forum_attachment 附件索引表 pre_forum_attachment_0 附件分表 0 pre_forum_attachment_1

网站博客更换主机空间搬家:Discuz! X2.5老鹰主机搬家全过程

http://www.freehao123.com/discuz-x2-5-banjia/由于我放在hawkhost老鹰主机主机的部落论坛就要到期了,而老鹰主机的续费价格却是按照原价来的,没有任何优惠可言.所以如果按照原价来续费的话,老鹰主机的性价比还不如首年购买主机5折优惠要划算些. 为了省钱,我又重新购买了一个老鹰主机的Basic套餐,将原来的Discuz! X2.5搬家到新的空间的上,整个过程从购买空间成功到等待激活,再到空间完成搬家和域名解析大概没用过12小时. 恰好有朋友咨询我关于如何

Discuz!X2.5论坛首页模板请问是哪一个htm文件?

Discuz!X2.5论坛模板文件目录: template/default/common/header_common.htm全局头部 template/default/common模板公共文件夹,全局相关 template/default/forum社区模块模板文件夹 template/default/forum/discuz.htm社区首页模板 template/default/common/footer.htm全局底部 template/default/common/header.htm全局