Discuz! 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 模块分类缓存”,然后开始更新。

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

时间: 2024-12-21 12:39:55

Discuz! X2.5 添加自定义数据调用模块的相关文章

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

转:http://521-wf.com/archives/46.html Discuz! X2.5 添加自定义数据调用模块(简单方法) Discuz!X系列的diy功能还是相当不错的,在对其进行二次开发的过程中,或许需要加入新的数据调用模块,这样可以使你开发的功能模块也像原来的模块一样,只需要点点鼠标,填写一些简单的信息,就可以在各个页面的各个位置显示你想显示的数据啦. 以下就目前最新版X2.5做一个简答的介绍:大致可以分为以下三个步骤:一.添加数据调用程序二.后台更新diy模块分类缓存三.添加

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

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

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

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

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全局

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

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

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

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

备份:Discuz!X2伪静态后部分链接动态的解决方法

原来新浪sae不用了,备份之前的一篇文章,发布时间是2011年11月9日. 康盛创想的核心产品--Discuz! X2发布以后,测试安装了一下,整体感觉非常不错,相对于CMS来说,DZ毕竟是论坛出身,门户模块差了许多,但仍不失为地方门户的建站首选. 最近,重新上线的雪地靴之家就采用了Discuz! x2 搭建,当一切安装与设置就绪后,发现一个问题,关于伪静态问题. 问题描述: 在后台开启全部伪静态后,打开网站首页(我设置的是门户为首页)发现有的链接是静态.有的链接是动态,这是怎么回事呢?搜索了半

DISCUZ X2更换域名注意事项

最近经常遇到几个由于网站更换域名,而导致网站访问出问题.这几天都凑在一块了,所以无忧主机(www.51php.com)小编就常用的php开源cms系统更换域名是否“敏感”的问题整理了下,做了一个小专题,希望大家能够喜欢,多多支持无忧主机php虚拟主机.Discuz x2也是站长常用的一个系统,如果我们给discuz x2更换域名,需要我们注意那些事情类? 网站更换域名,不利于网站推广.也会影响收录,以前的努力等于白费.如没有天大的理由,别随意更换网站域名.如果正在discuz x2论坛更换域名操

如何通过from语句调用模块的变量名?

# -*- coding: utf-8 -*- #python 27 #xiaodeng #如何通过from语句调用模块的变量名? #my.py def printer(x): print x #如何通过from语句调用模块的变量名? #方法一: from my import printer #方法二 #from my import * printer('xiaodeng')