discuz 二次开发

discuz 框架也算是比较流行的社区论坛框架,discuz 的基础架构采用世界上最流行的 web 编程组合 PHP + MySQL 实现,是一个经过完善设计,适用于各种服务器环境的高效论坛系统解决方案。

1、安装 discuz

先下载 discuz 的安装包,解压之后有3个文件,如下:

然后把 upload 文件夹(另两个文件不用管)移动到本地服务器主机文件夹里(比如 htdocs),把 upload 文件夹的名字改成项目名(比如 discuz),再在地址栏输入 http://localhost/phpMyAdmin,添加一个数据库(库名就叫 discuz),如下:

再在地址栏输入 http://localhost/discuz,进入 discuz 安装流程,在第三步的时候,填写内容如下:

这样 discuz 就算是安装完了。

2、discuz 运行流程

比如:本地服务器主机文件夹找到刚刚移进去的 discuz 文件夹(没改名的话就是 upload), 打开 home.php 文件

require_once libfile() 这个方法表示它会去找 source/module 目录里的文件,home/.$mod 表示文件名(比如:http://localhost/discuz/home.php?mod=invite 表示找到 module/home/home_invite.php),然后在 home_invite.php 里面会有一个叫 include_once 方法(比如 include_once template(‘home/invite‘) 表示会打开 template/default/home/invite.htm),运行里面的代码。

3、创建一个新的模板风格,以便开发

打开 template 文件夹,创建一个新目录如:template/test;

将 template/default 目录下的

这四个文件复制到 test 文件夹,将 discuz_style_default.xml 文件名改成 discuz_style_test.xml,然后打开

修改文件中以下四个参数:

  <item id="templateid"><![CDATA[1]]></item>  指定初始化templateid,这里不要和现有安装风格的id相同,把数字1改成另一个数字;
  <item id="tplname"><![CDATA[默认模板套系]]></item>  指定扩展风格套系的名称,例如:test。
  <item id="directory"><![CDATA[./template/default]]></item>  指定扩展风格所在的文件夹,这个文件夹的名字就是你刚才在template新建的test。

另外我们复制的配置文件中需要我们特别注意的就是以下两个参数:

  <item id="styleimgdir"><![CDATA[]]></item>  此参数为扩展目录地址,例如:template/test/cmsoft,在 test 文件夹创建 cmsoft 文件夹;

  <item id="imgdir"><![CDATA[]]></item>  此参数为风格基础图片存放的目录,默认使用地址 static/image/common/ 目录,一般我们只需要留空就行了。

在 test 文件夹创建必要的子目录与文件如:template/test/common,template/test/common/extend_common.css,template/test/common/extend_module.css;

其中 common 目录为公共模板目录,其内部新建的 extend_common.css、extend_module.css 为扩展型 CSS 文件,它们可以在 template/default/common/common.css 的和

module.css 的基础上进行 CSS 代码的覆盖性扩展。

登录 discuz 后台(http://localhost/discuz/admin.php),输入安装的时候填的管理员账户密码,在界面的版块下找到风格管理,会多了一个 test 的风格,点击安装。

4、discuz 调用模块

比如:打开 template/default/common/header.htm,第一行代码<!--{subtemplate common/header_common}-->表示 common 目录下 header_common.html 文件的内容。

在 header_common.html 里有一段 js 代码,定义的一些变量,用的比较多的就是 discuz_uid(用户 ID)、JSPATH(js 路径)、CSSPATH(css 路径)等。在新增页面时,只需要在第一行代码和最后一行代码写上 <!--{template common/header}--> 和 <!--{template common/footer}-->,很明显这表示页面公用的头部和尾部内容,然后中间开发自己写的代码就行。

时间: 2024-10-05 04:58:49

discuz 二次开发的相关文章

discuz二次开发技巧

二次开发大多时候知识设置和处理,如果能够获知模板文件获得的变量数组将大大提高我们的开发效率 获取页面已经定义的变量 <--{eval printf_r(get_defined_vars());}--> 获取页面定义的常量 <--{eval print_r(get_defined_constants(true));}--> discuz二次开发技巧,布布扣,bubuko.com

discuz二次开发,分析和实现 之 向dz数据库插入自己的帖子吧

发个博客太麻烦了,难怪写博客的越来越少,吐一下,cnblogs的编辑器模板太丑! 最近开发社区 需要采集一些数据,使得模板输出有图文效果.就写了个简单的采集脚本,爬取目标站的内容,(用php 下载图片 处理起来比较麻烦).有了数据 就要插入到dz的数据库 ,随便命名一个 test.php 放在discuz 的web根目录下.操作一下 花了点功夫,中间有不少头疼的时候.特记录.两个注意点,一 ,Discuz的帖子 存储在帖子表 pre_forum_post ,message 字段,这里的图片 和换

Discuz二次开发手册

Discuz文件说明,有助于discuz爱好者,进行自己的开发,在这里提供方便 admincp.php——后台系统设置主程序文件,一般只处理菜单的显示的访问权限,不处理管理控制. ajax.php——论坛模板的ajax 判断及数据返回都在这里进行 attachment.php——附件文件,仅仅处理附件下载的功能. announcement.php——论坛公告的显示,一般很少改 config.inc.php——配置论坛数据库.密码等信息,这个大家最熟悉了 discuz_version.php——论

discuz二次开发笔记(一)------$_G全解析

$_G 保存了 Discuz! 中所有的预处理数据缓存能够很好的提高程序的性能,一些配置数据没必要每次都查询数据库,只要在修改了的时候更新下缓存即可.Discuz! 中所有的缓存保存在 $_G[cache] 中$_G[member] 会员信息数据$_G[uid] 用户 uid$_G[username] 用户名$_G[adminid] 用户管理组 id$_G[groupid] 用户用户组 id$_G[settting] 设置数据$_G[cache] 系统缓存$_G[cache][plugin] 插

discuz二次开发笔记(二)------跳转函数运用

前几天在增加修改功能时,突然用到一个提示函数,有点不理解,看了他的由来后果断做下笔记,感觉这在以后的开发中肯定还是要用的上的.有些地方不是很理解,在以后慢慢纠正.查补. Htm页面中用的js跳转: $("#lyy_real").click(function(){ $.post("api/realnamechange.php", {uname:$("#uname").val(),uid:$("#uid").val(),realn

discuz二次开发笔记(三)------discuz的安装步骤

下载好discuz的安装包后,解压在自己定义的文件夹里面,将upload里面的文件拷贝出来放到和upload同级的地方,然后删除upload文件夹. 打开浏览器,输入你文件夹的地址:如:http://192.168.1.95:90/lyy/ 它会跳出如下界面: 点击下一步后,会出现 按图点击下一步 标红线的地方都是要自己定义的,必须根据自己的实际需求来改. 开始安装数据库 安装完成,这时候你就可以登录你刚才填写的那个帐号了.

在discuz二次开发模板时,diy编辑显示我“抱歉,您没有权限添加此模块

<div id="diy_vk_portal_slide_top" class="area"><div id="frameCRxR0M" class=" frame move-span cl frame-1"><div id="frameCRxR0M_left" class="column frame-1-c"><div id="fra

什么是php二次开发,怎么做php二次开发?

什么是php二次开发 所谓的二次开发,简单的说就是修改别人的东西,变成你想要的东西,插件基本属于高端了,根据现有的程序的不足,加以改进修饰,然后达到自己想要实现的功能和效果. 怎么做php二次开发 二次开发和一次开发不同的地方在于你是要先看懂别人的代码再去做,二次开发,首先你需要知道自己对什么程序进行二次开发,比如一些招聘信息上会写Discuz二次开发,ShopEX二次开发.这些都是对已经成型的程序进行的功能性扩展开发. 第一,你要有这个开 源 产 品的所用语言的语言基础,就是能看懂代码是最基本

企业仿站 个人仿站 定制网站制作 phpcms插件开发 网站二次开发 phpcms二次开发

团队擅长项目 1.客客威客系系统系模版制作.仿站.二次开发程序 2.ecshop商城系统系模版制作.模版制作.程序二次开发.插件开发 3.phpcms系统模版制作.插件开发.程序二次开发 4.帝国cms系统模版制作.插件开发.程序二次开发 5.dedecms系统模版制作.插件开发.程序二次开发 6.Wordpress博客社区系统模版制作.插件开发.主题定制 7.Discuz论坛社区系统.模版制作.插件开发.仿站定制 网站运维: 3.liunx  环境安装  win2003 –win2012 环境