`

Discuz!X 插件制作教程(三) ------ 页面嵌入 & 导航

阅读更多

    现在我遇到一个问题:我想更改自己网站的页面内容,比如我希望能在不使用二次开发更改系统模板的情况下来更改部分布局和内容,我应该怎么做?    似乎现在的DX很强大,但是这样的功能它支持么?很高兴地告诉你:你完全可以做到!你甚至可以通过自己的内容来对页面的任意一部分内容进行更改,这就是DX插件最最强大的地方,当然前提是你需要去了解它。
    现在我们来实现一个内容,我们以我自己的一个插件:帖子导读的显示部分为例。
    首先,我们需要了解DX的一个概念:嵌入点。
    在每个标准的DX页面都有一些DX已经设定好的嵌入点,要查看这些嵌入点,我们需要对系统的代码进行一些修改,方法如下:

查找 source/class/class_template.php 中找到以下代码,去除 //for Developer 注释后,更新缓存即可查到。
$dev = '';//for Developer $dev = "echo '[$hookid]';";
   更新一下缓存,然后你就会看到如下图的内容:1.png 
    帖子导读需要我们在每个页面都进行调用,我们需要编写一个调用类:
2.png 

    同样,我们需要在我们的插件目录下来编写这个插件了,在这里,我们以我们最常见的方式来写一段JS代码:HELLO,WORLD!
<?php
if(!defined('IN_DISCUZ')) {

exit('Access Denied');
}
class plugin_mtest{

function global_footer(){

return '<script language="javascript"> alert("Hello,world!"); </script>';

}
}
?>
   保存这个文件为:source/plugin/mtest/m.class.php 假定mtest是你的标识符,然后更新缓存,再点击你的广场页面试试,看看有什么奇迹发生。
    关于具体的嵌入调用规则,这里无法完全讲解给您,您可以参考:http://www.bbsapp.com/PluginDevloper/ 来帮助您了解。当然,您也看到了,您可以随意地输出您想要的JS代码,这也就是意味着,即使在一些没有嵌入点的地方,您也可以同输出的JS代码来改变您想作出的改变,当然,嵌入点能做的远远不止如此,那得看您能想到多少了。
    现在,您基本上已经可以做常用的插件了。不过,如果您需要一个导航栏怎么办?天啊!我需要一个类似于每日签到 这样的一个签到页面,我应该怎么来做呢?
    不用着急,接下来我们就来实验一个导航栏,然后进去之后输出一个hello,world的代码。
    首先,我们需要在设计模块里面增加一个导航栏
3.png 
    有了它,我们就可以写:mtest.inc.php这个文件了,不过我们似乎还需要一点点模板的支持,那么我们在这个文件夹下,新建一个文件夹:template,然后在它的下面新建一个文件:mtest.htm,内容如下:
{template common/header}
<p>HELLO,WORLD!!!!</p>
{template common/footer}
   在mtest.inc.php这个文件里,我们写入:
<?php
if(!defined('IN_DISCUZ')) {

exit('Access Denied');
}
include template("mtest:mtest");
?>
   然后,更新一下缓存,然后刷新一下站点首页,看看有什么效果?
4.png 

hello,world!


5.png 

导航栏


6.png 

最后的现实


    怎么样,是不是很棒?你可以浏览我的以下插件来学习如何使用插件:


    1. 每日签到 http://www.discuz.net/thread-1703440-1-1.html


    2. 帖子导读 http://www.discuz.net/thread-1799341-1-1.html

 

海口论坛

分享到:
评论

相关推荐

    QQ互联插件版 for Discuz! X1.5 v1.0 UTF-8-源码.zip

    QQ互联插件版 for Discuz! X1.5 v1.0 UTF-8 源码是一个用于Discuz! X1.5论坛系统的扩展插件,它实现了与腾讯QQ的深度整合,允许用户通过QQ账号进行快速登录、注册以及社交互动。这个插件的源码发布,对于开发者来说...

    QQ互联插件版 for Discuz! X1.5 v1.0 UTF-8.zip

    QQ互联插件版针对Discuz! x1.5和7.2开发,允许使用Discuz X2中内置的QQ互联功能。 QQ互联插件版 for Discuz! X1.5,整合QQ互联最核心的QQ帐号登录功能和看帖分享功能,并且安装非常简单。

    QQ互联插件版 for Discuz! X1.5 v1.0 GBK-源码.zip

    QQ互联插件版 for Discuz! X1.5 v1.0 GBK 源码是一个专门为Discuz! X1.5论坛系统设计的插件,用于实现与腾讯QQ的深度整合。这个插件允许用户使用QQ账号进行登录、注册和互动,极大地简化了用户在论坛上的操作流程,...

    Comsenz XConvert v2.5 任意论坛转换到Discuz!.rar

    为了让更多站长顺利过渡到 Discuz! (UCenter)平台,进一步完善数据迁移工作改进易用度,现正式向各位推荐 XConvert 转换程序!该转换程序可以转换目前所有常见的论坛程序,想转换到 Discuz! 的用户再也不用到处找...

    Discuz!X插件开发过程 入门必学

    #### 三、Discuz!X2插件模块说明 Discuz!X2提供了多种插件模块类型,以适应不同的需求: - **导航栏项目**:可在前台导航栏增加菜单项,指向自定义URL或调用插件的某个模块。 - **导航栏-插件菜单项目**:在前台...

    Discuz! X1.5导航插件

    X1.5导航插件是一款专为Discuz! X1.5平台设计的强大辅助工具,它旨在帮助用户更好地管理和优化社区网站的导航功能,提升用户体验,增强网站的互动性和实用性。这款插件在www.58119.com上有着生动的展示,通过实际...

    Discuz! X插件开发

    Discuz! X插件开发

    QQ互联插件版 for Discuz! X1.5 v1.0 UTF-8

    QQ互联插件版针对Discuz! x1.5和7.2开发,允许使用Discuz X2中内置的QQ互联功能。QQ互联插件版 for Discuz! X1.5,整合QQ互联最核心的QQ帐号登录功能和看帖分享功能,并且安装非常简单。

    Discuz! X1.5 英文版 UTF-8.zip

    Discuz! X1.5 Release 20110428 更新内容: FIX 登录退出可刷在线时间BUG FIX 插件机制嵌入点细节优化 FIX 会员模板过滤掉禁止发言、禁止访问、用户IP被禁止、游客、等待验证的会员 FIX 建议自动选择用户名默认...

    Discuz! X1.5 英文版UTF-8

    X1.5 Release 20110428 更新内容:FIX 登录退出可刷在线时间BUGFIX 插件机制嵌入点细节优化FIX 会员模板过滤掉禁止发言、禁止访问、用户IP被禁止、游客、等待验证的会员FIX 建议自动选择用户名默认开启FIX 修复活动...

    Discuz!X2.5_插件制作教程借鉴.pdf

    X2.5 插件制作教程】是一个针对Discuz!X2.5论坛系统的插件开发教程,适合已经对PHP和数据库有一定基础的站长或开发者学习。本教程旨在帮助用户理解和掌握如何在Discuz!X2.5框架内创建自定义插件,以满足特定功能需求...

    Discuz!X3.1穷游网模板-解压密码:www.17558.net

    Discuz!X3.1穷游网模板UTF8

    Discuz!NT-3.6.711-繁体

    【标题】"Discuz!NT-3.6.711-繁体"指的是Discuz!NT的一个特定版本,这是由Comsenz公司开发的一款基于ASP.NET技术的论坛软件。 Discuz!NT是针对Windows服务器环境设计的,它提供了一个功能丰富的社区论坛平台,支持多...

    棋盘游戏插件 for Discuz! ALL.rar

    Discuz! 安装注意: 5.0.0版本: 如果您使用的模板中header.htm并不是/templates/default/文件夹中的,请在头部模板中找到下面这一行: &lt;!--{if $allowsearch || $qihoo_status}--&gt;| &lt;a &gt;{lang search}&lt;/a&gt;...

    商业源码-编程源码-Discuz! v5.0.0 Build 081117 UTF-8繁体中文版.zip

    《Discuz! v5.0.0 Build 081117 UTF-8繁体中文版:商业源码与社区论坛系统解析》 Discuz! 是一款知名的开源社区论坛软件,由康盛创想(Comsenz)公司开发。这款软件以其强大的功能、灵活的扩展性和易于管理的特点,...

    [论坛社区]Discuz!NT 2.6 安装包 繁体utf-8_discuz.web.zip

    【Discuz!NT 2.6 简介】 Discuz!NT是由Comsenz公司开发的一款基于.NET平台的开源社区论坛系统,适用于构建大型、高性能的社区网站。这款论坛软件以其强大的功能、灵活的扩展性和优秀的用户体验,在中文社区领域内...

    商业源码-编程源码-Discuz! v4.1.0 Build 1028 UTF-8繁体中文版.zip

    Discuz!是一款知名的开源论坛系统,它为网站提供了一个强大、高效且易用的社区平台。这个压缩包“商业源码-编程源码-Discuz! v4.1.0 Build 1028 UTF-8繁体中文版.zip”包含的是Discuz!的商业源码,版本号为4.1.0,...

    商业源码-编程源码-Discuz! v6.0.0 bulid 081117 UTF-8 繁体中文版.zip

    《Discuz! v6.0.0 商业源码详解》 Discuz! 是一款知名的社区论坛软件,由康盛创想(Comsenz)公司开发。本篇将深入探讨 Discuz! v6.0.0 build 081117 UTF-8 繁体中文版的核心功能和特点,帮助开发者理解其架构、...

Global site tag (gtag.js) - Google Analytics