找回密码
 立即注册
快捷导航

discuz 论坛模板文件主要结构+钩子执行顺序

[复制链接]
论坛版块  forum
<!--{subtemplate common/header_common}-->
    <!--{template common/header}-->
            <!--{template common/header_userstatus}-->    <!--网站图标右侧的信息-->
            <!--{subtemplate common/pubsearchform}-->   搜索
        discuz.htm     主  body>div#wp.wp
        <!--{template common/footer}-->

帖子列表  forumdisplay
<!--{subtemplate common/header_common}-->
    <!--{template common/header}-->
            <!--{template common/header_userstatus}-->    <!--网站图标右侧的信息-->
            <!--{subtemplate common/pubsearchform}-->   搜索
        forumdisplay.htm    主
            <!--{template forum/forumdisplay_subforum}-->  子版块
        <!--{subtemplate forum/forumdisplay_list}-->  进入 帖子列表
        <!--{subtemplate forum/forumdisplay_sort}-->

帖子内容  viewthread
    <!--{subtemplate common/header_common}-->
    <!--{template common/header}-->
            <!--{template common/header_userstatus}-->    <!--网站图标右侧的信息-->
            <!--{subtemplate common/pubsearchform}-->   搜索
        viewthread.htm
            <!--{subtemplate forum/viewthread_node}-->
回复

使用道具 举报

主题

0

回帖

1013

积分
 楼主| 清风拂柳夜微凉 2024-4-26 10:26:09 | 显示全部楼层
<!--{subtemplate common/header_common}-->
        <!--{template common/header}-->
                discuz.htm     body>div#wp.wp
                <!--{template common/footer}-->
               

<!--{echo $navtitle}-->

<!--{echo var_dump($nobbname)}-->

<!--{eval var_dump($nobbname)}-->

<base href="{$_G['siteurl']}" />    http://127.0.0.1:8081/

<script type="text/javascript" src="{$_G[setting][jspath]}common.js?{VERHASH}"></script>
        data/cache/    ?aDj

$_G['setting']['bbname']    Discuz! Board

$_G['basescript']   fortal/forum/group/home
class="pg_{CURMODULE}    pg_index   
回复

使用道具 举报

主题

0

回帖

3869

积分
admin 2025-1-4 14:46:45 | 显示全部楼层

钩子执行顺序

<?php

if (!defined('IN_DISCUZ')) {
    exit('Access Denied');
}

// \post_history\hook.class.php

//全局嵌入点类(必须存在)
class plugin_post_history
{

    public $config = array();

    // 0n.构造方法  所有调用前,会多次执行
    public function __construct()
    {

        global $_G;

        $this->config = $_G['cache']['plugin']['post_history'];
    }

    // 1n.所有模块执行前被调用(全局)   会多次执行
    public  function  common()
    {
        global $_G;

    }

    // discuzcode() 函数执行时调用   (全局)
    // 被动,用于在帖子内容解析时嵌入自己的功能,函数中 $_G['discuzcodemessage'] 变量为待解析的字串
    public  function  discuzcode($value){
        global $_G;
    }

    // 5.模块执行完毕,模板输出前被调用(全局)
    public function global_post($params){
        global $_G;
    }

}

// 脚本嵌入点类
class plugin_post_history_forum extends plugin_post_history {
    // 2.HookId():所有模块执行前被调用(脚本)   mod=post
    public function post($params){
        global $_G;
        echo 'xx';
    }

    // 3.HookId_output($value):模块执行完毕,模板输出前被调用(脚本)
    public function post_mhgueasi($params)
    {
        global $_G;
    }

    // 6.HookId_output($value):模块执行完毕,模板输出前被调用(脚本)
    public function post_mhgueasi_output($params)
    {
        global $_G;
    }

    // 4.identifier__hookid(_output)()
    // (X3.4 新增New!)
    public function post_history_post_xxxxx($params){
        global $_G;

    }

    // HookId_message($value):showmessage()执行时调用(脚本)
    public function post_message($params)
    {
        global $_G;

        if(!$this->config['on']) return;
        // 编辑完成点击提交后,进入这里
    }

    // 帖子页面顺序:__construct->common->viewthread_title_extra->discuzcode(两次)->global_post->viewthread_title_extra_output->__construct->common
    public function viewthread_title_extra($params){
        return "AAAAAAA";
    }

    public function viewthread_title_extra_output($params){
        return "BBBBBBBB_output";
    }
}

// 编辑页面顺序:__construct->common-> post -> post_mhgueasi -> post_history_post_xxxxx -> global_post -> post_mhgueasi_output-> __construct->common
// 编辑页面发布时顺序:__construct->common-> post -> post_mhgueasi -> post_history_post_xxxxx -> post_message -> 帖子页面顺序
   
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1楼
2楼
3楼
温馨提示

关于 注册码 问题

      由于近期经常大量注册机器人注册发送大量广告,本站开启免费入群领取注册码注册网站账号,注册码在群公告上贴着...

关于 注册码 问题

      由于近期经常大量注册机器人注册发送大量广告,本站开启免费入群领取注册码注册网站账号,注册码在群公告上贴着...

Archiver|手机版|小黑屋|DLSite

GMT+8, 2025-1-18 10:02

Powered by Discuz! X3.5 and PHP8

快速回复 返回顶部 返回列表