手把手一步步教你使用rpcms的模板Hook

简介: rpcms可以制作模板和插件,有时候做的模板需要自定义一些功能,但又不想通过插件实现,那样用户在使用模板的时候,还必须配套插件才可以。为避免这写繁琐的操作,让用户使用模板更方便,我们可以使用模板的Hook功能。这个功能使用起来也很方便,只需要在你的模板文件夹中创建Hook.class.php,文件内容如下:

rpcms可以制作模板和插件,有时候做的模板需要自定义一些功能,但又不想通过插件实现,那样用户在使用模板的时候,还必须配套插件才可以。为避免这写繁琐的操作,让用户使用模板更方便,我们可以使用模板的Hook功能。

这个功能使用起来也很方便,只需要在你的模板文件夹中创建Hook.class.php,文件内容如下:

<?php
namespace template\index\tempName;
class Hook{
  public function addHook(){
    $data=array(
      'comment_save'=>'template\index\tempName\hook::sendMsg',
    );
    return $data;
  }
  public function sendMsg($data){
    /*
        *这里是自定义Hook的业务逻辑
        */
  }
}

image.gif

A、其中,namespace就是字面意思,空间命名,格式:template\index\模板文件夹名称

这里需要注意两点:

    1. 使用的是反斜线,不是斜线!不是斜线!!
    2. 模板文件夹名称区分大小写,注意了,这里很容易忽略,特别是win用户开发的时候。

    B、这个文件中有一个固定函数:addHook名称是固定的,不要修改!

    addHook函数是返回模板定义的钩子,按照上述格式编写即可(请确保钩子存在)

    然后再自定义的钩子里面写自己的业务逻辑就行了,是不是很方便哈,只用模板就可以是些一些功能,不用再单独下载插件了。

    相关文章
    |
    9月前
    |
    JavaScript 编译器 API
    【C++ 函数和过程 进阶篇】全面掌握C++函数返回值:从入门到精通的实战指南
    【C++ 函数和过程 进阶篇】全面掌握C++函数返回值:从入门到精通的实战指南
    311 1
    |
    9月前
    |
    JavaScript 前端开发 算法
    用vue想要拿20k,面试题要这样回答(源码版)
    用vue想要拿20k,面试题要这样回答(源码版)
    |
    9月前
    |
    JavaScript 前端开发 API
    Nestjs(一)入门前置知识点
    Nestjs(一)入门前置知识点
    148 3
    |
    9月前
    |
    小程序 开发工具 git
    uniapp项目实践第三章:初始化项目
    uniapp项目实践第三章:初始化项目
    129 0
    |
    9月前
    |
    编译器 C++
    C++初阶(十七)模板进阶
    C++初阶(十七)模板进阶
    64 0
    |
    移动开发 开发框架 小程序
    基于mpvue的小程序项目搭建的步骤
    基于mpvue的小程序项目搭建的步骤
    115 0
    |
    移动开发 开发框架 小程序
    基于mpvue的小程序项目搭建的步骤一
    基于mpvue的小程序项目搭建的步骤一
    100 0
    |
    编译器 C语言 C++
    【C++初阶】十三、模板进阶(总)
    目录 一、非类型模板参数 二、模板的特化 2.1 模板特化概念 2.2 函数模板特化 2.3 类模板特化 2.3.1 全特化 2.3.2 偏特化 三、模板分离编译 四、模板总结(优缺点)
    144 0
    【C++初阶】十三、模板进阶(总)
    |
    中间件 C#
    MasaFramework入门第二篇,安装MasaFramework了解各个模板
    MasaFramework入门第二篇,安装MasaFramework了解各个模板
    233 0
    MasaFramework入门第二篇,安装MasaFramework了解各个模板
    |
    前端开发
    前端学习笔记202304学习笔记第九天-脚手架命令注册和参数分析
    前端学习笔记202304学习笔记第九天-脚手架命令注册和参数分析
    56 0