Documentation Index
Fetch the complete documentation index at: https://discuz.p.cafe/llms.txt
Use this file to discover all available pages before exploring further.
页面嵌入类型脚本格式
命名规则说明
plugin_ 前缀:普通版脚本中的类名以plugin_ 开头。手机版脚本中的类名以 mobileplugin_ 开头。
identifier: 插件的唯一标识符,在插件设置中设置。
CURSCRIPT: 嵌入点位于的脚本名,如 forum.php 为 forum。X3.4 最新版本开始支持 plugin.php 为 CURSCRIPT 的插件之间的 hook 调用,CURSCRIPT 值为 plugin。
HookId 函数类型
| 函数名 | 调用位置 | 声明位置 | 参数含义 |
|---|---|---|---|
| HookId() | 所有模块执行前被调用 | 脚本嵌入点类 | - |
| HookId_output($value) | 模块执行完毕,模板输出前被调用 | 脚本嵌入点类 | $value: array(‘template’ => 当前要输出的模版, ‘message’ => showmessage 的信息内容, ‘values’ => showmessage 的信息变量) |
| global_HookId() | 模块执行完毕,模板输出前被调用 | 全局嵌入点类 | - |
| HookId_message($value) | showmessage() 执行时调用 | 脚本嵌入点类 | $value: array(‘param’ => showmessage() 函数的参数数组) |
| ad_adId($value) | 相应的广告位中调用 | 全局嵌入点类/脚本嵌入点类 | $value: array(‘params’ => 广告位参数, ‘content’ => 当前广告位原本将要显示的内容) |
| common() | 所有模块执行前被调用 | 全局嵌入点类 | - |
| discuzcode($value) | discuzcode() 函数执行时调用 | 全局嵌入点类 | $value: array(‘param’ => caller 函数的参数数组, ‘caller’ => caller 函数) |
| deletethread($value) | deletethread() 函数执行时调用 | 全局嵌入点类 | $value: array(‘param’ => deletethread() 函数的参数数组, ‘step’ => 删除的步骤) |
| deletepost($value) | deletepost() 函数执行时调用 | 全局嵌入点类 | $value: array(‘param’ => deletepost() 函数的参数数组, ‘step’ => 删除的步骤) |
| avatar($value) | avatar() 函数执行时调用 | 全局嵌入点类 | $value: array(‘param’ => avatar() 函数的参数数组) |
| profile_node($post, $start, $end) | 贴内用户信息标记 | 全局嵌入点类 | $post: 当前帖子信息数组,$start: 前置字符,$end: 后置字符 |
| identifier__hookid(_output)() | 插件的hook调用 | 脚本嵌入点类/应用互动嵌入点类 | 参考 HookId() 及 HookId_output() |
自定义嵌入点
要查看所有的预定义嵌入点,请打开 config/config_global.php 文件,将文件结尾添加的设计者模式值改成”2”,然后更新缓存即可。在页面源码中查找<hook>可搜索到嵌入点。
attachment_test() 函数会在论坛的下载附件的时候执行。
“_output”结尾的函数的第一个参数为数组,含义为 array('template' => 要输出的模板名, 'message' => showmessage 的文字)。
以下函数将在登录的时候输出调试文字: