本帖最后由 绝世十二少 于 2012-3-9 09:05 编辑

 六、实例讲解之页面嵌入
         1、插件页面嵌入-普通版
            <ignore_js_op style="WORD-WRAP: break-word"><img style="WORD-WRAP: break-word; CURSOR: pointer" id="aimg_1148531" οnmοuseοver="showMenu({'ctrlid':this.id,'pos':'12'})" title="1.jpg" οnclick="zoom(this, this.getAttribute('zoomfile'), 0, 0, '0')" alt="1.jpg" src="http://att.discuz.net/data/attachment/forum/201203/09/090540irsi3mhm13737iav.jpg.thumb.jpg" inpost="1" file="http://att.discuz.net/data/attachment/forum/201203/09/090540irsi3mhm13737iav.jpg.thumb.jpg" zoomfile="http://att.discuz.net/data/attachment/forum/201203/09/090540irsi3mhm13737iav.jpg" aid="1148531" initialized="true"><span class="Apple-converted-space"> </span></ignore_js_op>

2、在 ./source/plugin/send_jinbi/ 目录下建立 send_jinbi.class.php 文件,目的为了页面嵌入

  1. <?php
  2. if(!defined('IN_DISCUZ')) {
  3. exit('Access Denied');
  4. }
  5. class plugin_send_jinbi {
  6. function global_header() {
  7. global $_G;
  8. $sendConfig = array();
  9. $sendConfig = $_G['cache']['plugin']['send_jinbi'];  //缓存插件变量值
  10. if( intval($sendConfig['status']) == 1 ) {  //是否启动插件
  11. if( isset($_POST['regsubmit']) ) { //会员注册后
  12. $uid = intval($_G['member']['uid']);
  13. if( $uid ){
  14. $jinbi_num = intval($sendConfig['jinbi_num']);  //送金币数量
  15. updatemembercount($uid,array("extcredits2" => $jinbi_num)); //更新金币数 (这个是function_core.php的现成函数)
  16. //这里可以进行任何数据库的操作
  17. }
  18. }
  19. }
  20. }
  21. }
  22. ?>

复制代码

3、基本上已经完成一大半了,你只要开启插件,然后更新缓存(可靠点),然后到前台去注册一个会员,则会自动送上100金币。
            <ignore_js_op style="WORD-WRAP: break-word"><img style="WORD-WRAP: break-word; CURSOR: pointer" id="aimg_1148532" οnmοuseοver="showMenu({'ctrlid':this.id,'pos':'12'})" title="2.jpg" οnclick="zoom(this, this.getAttribute('zoomfile'), 0, 0, '0')" alt="2.jpg" src="http://att.discuz.net/data/attachment/forum/201203/09/0905437a1e224x7gkan21v.jpg.thumb.jpg" inpost="1" file="http://att.discuz.net/data/attachment/forum/201203/09/0905437a1e224x7gkan21v.jpg.thumb.jpg" zoomfile="http://att.discuz.net/data/attachment/forum/201203/09/0905437a1e224x7gkan21v.jpg" aid="1148532" initialized="true"><span class="Apple-converted-space"> </span></ignore_js_op>

七、实例讲解之安装、卸载及升级
            1、 安装(install.php)、卸载(uninstall.php)程序中可随意设计页面的跳转,只要在插件安装、卸载结束时候输出添加 $finish = TRUE; 即可,脚本中可用 runquery() 函数执行 SQL 语句。

  1. <?php
  2. if(!defined('IN_DISCUZ')) {
  3. exit('Access Denied');
  4. }
  5. /*任意执行代码:开始*/
  6. //..........
  7. //..........
  8. /*任意执行代码:结束*/
  9. $finish = TRUE;
  10. ?>

复制代码

2、升级(upgrade.php)程序中可通过 $fromversion 和 $toversion 变量判断升级的具体版本号,并随意设计页面的跳转,只要在插件升级结束时候输出添加 $finish = TRUE; 即可,脚本中可用 runquery() 函数执行 SQL 语句。

  1. <?php
  2. if(!defined('IN_DISCUZ')) {
  3. exit('Access Denied');
  4. }
  5. /*任意执行代码:开始*/
  6. //..........
  7. //..........
  8. /*任意执行代码:结束*/
  9. $finish = TRUE;
  10. ?>

复制代码

3、其他功能请参考其他插件

[手把手教]discuzX2插件制作教程__最菜鸟级别的入门坎 【二】相关推荐

  1. [手把手教]discuzX2插件制作教程__最菜鸟级别的入门坎 一

     绝世十二少 于 2011-10-17 10:49 编辑 终于也轮到我写教程指导后人了,在此感谢会员(sw08)的热心指导,同时也感谢曾经提供各种插件资料给我的论坛朋友们,是你们帮我跨过了插件的入门坎 ...

  2. [手把手教]discuzX2插件制作教程__最菜鸟级别的入门坎 【三】

    八.实例讲解之插件语言包            1.打开之前所创建的语言包文件(data/plugindata/send_jinbi.lang.php),添加以下代码,红色部分为插件的唯一标识符: & ...

  3. discuzX2插件制作教程__最菜鸟级别的入门坎

    一.开发插件所需资料与工具          1.DiscuzX2 插件机制    http://dev.discuz.org/wiki/#.E6.8F.92.E4.BB.B6.E6.9C.BA.E5 ...

  4. 插件__discuzX2插件制作教程__最菜鸟级别的入门坎

    一.开发插件所需资料与工具          1.DiscuzX2 插件机制    http://dev.discuz.org/wiki/#.E6.8F.92.E4.BB.B6.E6.9C.BA.E5 ...

  5. discuzX2插件制作教程

    一.开发插件所需资料与工具          1.DiscuzX2 插件机制    http://dev.discuz.org/wiki/#.E6.8F.92.E4.BB.B6.E6.9C.BA.E5 ...

  6. WordPress插件制作教程概述

    接下来的一段时间里,开始为大家讲解WordPress插件制作系列教程,这篇主要是对WordPress插件的一些介绍和说明,还有一些我们需要注意的地方,以及需要掌握的知识. WordPress插件允许你 ...

  7. C# SuperSocket 手把手教你入门 傻瓜教程---5(探索自定义AppServer、AppSession,Conmmand,用配置文件App.comfig启动服务器)

    C# SuperSocket 手把手教你入门 傻瓜教程系列教程 C# SuperSocket 手把手教你入门 傻瓜教程---1(服务器单向接收客户端发送数据) C# SuperSocket 手把手教你 ...

  8. C# SuperSocket 手把手教你入门 傻瓜教程---3(Telnet服务器和客户端请求处理)

    C# SuperSocket 手把手教你入门 傻瓜教程系列教程 C# SuperSocket 手把手教你入门 傻瓜教程---1(服务器单向接收客户端发送数据) C# SuperSocket 手把手教你 ...

  9. C# SuperSocket 手把手教你入门 傻瓜教程---1(服务器单向接收客户端发送数据)

    C# SuperSocket 手把手教你入门 傻瓜教程系列教程 C# SuperSocket 手把手教你入门 傻瓜教程---1(服务器单向接收客户端发送数据) C# SuperSocket 手把手教你 ...

最新文章

  1. 【采用】概率图模型在反欺诈的应用(无监督机器学习)
  2. 【STM32】USART相关函数和类型
  3. Could not obtain connection metadata
  4. 诗歌rails之头像上传和调整
  5. Android Textview实现文字颜色渐变效果
  6. CSS综合征病例,ChurgStrauss 综合征 (css) 变应性嗜酸性肉芽肿课件
  7. teablue数据分析_Bluetea蓝茶的品牌该如何分析,你知道吗
  8. 怎么做平面设计海报——黎乙丙
  9. ssm java当前项目路径_SSM项目中动态获取路径
  10. 不管怎么换相,电机始终反转 。这是怎么回事?
  11. CC2530基础实验二:电源管理与睡眠定时器
  12. python如何压缩pdf_PDF文件怎么压缩,一键压缩PDF文件
  13. 4块硬盘掉线导致服务器崩溃解决过程
  14. ios隐私政策_新的iOS 14已经揭露了严重的隐私问题
  15. (MDY)2021秋季软件工程 alpha冲刺完善
  16. 利用双目摄像头来进行空间点的三维坐标定位
  17. BZOJ——2563: 阿狸和桃子的游戏
  18. 相当全的JS及.NET正则表达式语法
  19. Unity中Combined Mesh (root: scene)的解决方法
  20. 手机病毒“僵尸网络”进入高发期

热门文章

  1. 信息学奥赛一本通 2004:【20CSPJ普及组】优秀的拆分 | 洛谷 P7071 [CSP-J2020] 优秀的拆分
  2. 元素(HYSBZ-2460)
  3. 动态规划 —— 背包问题 P01 —— 0-1背包
  4. 信息学奥赛一本通C++语言——1126:矩阵转置
  5. 信息学奥赛一本通C++语言——1018: 其他数据类型存储空间大小
  6. 3 SAP STMS跨服务器传请求号
  7. java购物车后台_JavaWeb后台购物车类实现代码详解
  8. unix入门经典_程序员大神们的经典编程语录
  9. python array函数_Python bytearray() 函数
  10. 将 EndNote 文献信息导出成 BibTeX 格式(可根据label排序)以及出现三个问号