当前位置:首页 > PHP > 正文内容

Z-Blog PHP插件开发笔记

6年前 (2018-05-10)PHP

因为研究了公众号采集阅读量的接口,所以想把这个集成到我的博客里。本来想直接改ZBlog的代码,但是改来改去发现要改的东西实在太多,而且对原来的系统不友好。所以看了下Zblog的插件开发资料,发现与iOS逆向插件开发有很多相同之处,都是HOOK某些方法,然后修改返回值之类的。


1、在后台应用中心新建插件

2、在目录 zb_users/plugin/ 下就有刚才建的插件了

3、编辑插件目录下的include.php


function ActivePlugin_wxapi() {
    Add_Filter_Plugin('Filter_Plugin_Cmd_Begin','wxapi_WatchCmd');
    Add_Filter_Plugin('Filter_Plugin_Zbp_MakeTemplatetags','canSearch');
}

我这里用到了 Filter_Plugin_Zbp_MakeTemplatetags和Filter_Plugin_Cmd_Begin,后面是调用你HOOK之后的方法。具体有哪些方法可以被HOOK,官方文档如下。




文章相关接口

管理页面输出

接口名称接口参数接口描述
Filter_Plugin_Admin_ArticleMng_SubMenu
文章管理子菜单
Filter_Plugin_Admin_PageMng_SubMenu
页面管理
Filter_Plugin_Edit_Begin
文章页面编辑页开始接口
Filter_Plugin_Edit_End
文章页面编辑页结束接口
Filter_Plugin_Edit_Response
文章页面编辑1号输出接口
Filter_Plugin_Edit_Response2
文章页面编辑2号输出接口
Filter_Plugin_Edit_Response3
文章页面编辑3号输出接口

接管系统方法

接口名称接口参数接口描述
Filter_Plugin_PostArticle_Corearticle文章提交的核心接口
Filter_Plugin_PostArticle_Succeedarticle文章编辑成功的接口
Filter_Plugin_DelArticle_Succeedarticle文章删除成功的接口
Filter_Plugin_PostPage_Corearticle页面编辑的核心接口
Filter_Plugin_PostPage_Succeedarticle页面编辑成功的接口
Filter_Plugin_DelPage_Succeedarticle页面删除成功的接口
Filter_Plugin_Post_Callpost,method,argsPost类的魔术方法接口

分类相关接口

管理页面输出

接口名称接口参数接口描述
Filter_Plugin_Admin_CategoryMng_SubMenu
分类管理页面子菜单
Filter_Plugin_Category_Edit_Response
分类编辑页输出接口

接管系统方法

接口名称接口参数接口描述
Filter_Plugin_PostCategory_Corecate分类编辑的核心接口
Filter_Plugin_PostCategory_Succeedcate分类编辑成功的接口
Filter_Plugin_DelCategory_Succeedcate分类删除成功的接口
Filter_Plugin_Category_Callcategory,method,argsCategory类的魔术方法接口

评论接口

接口名称接口参数接口描述
Filter_Plugin_Admin_CommentMng_SubMenu
评论管理
Filter_Plugin_PostComment_Corecmt评论发表的核心接口
Filter_Plugin_PostComment_Succeedcmt评论发表成功的接口
Filter_Plugin_DelComment_Succeedcmt评论删除成功的接口
Filter_Plugin_Comment_Callcomment,method,argsComment类的魔术方法接口

用户接口

接口名称接口参数接口描述
Filter_Plugin_Admin_MemberMng_SubMenu
用户管理
Filter_Plugin_Member_Edit_Response
会员编辑页输出接口
Filter_Plugin_PostMember_Coremem会员编辑的核心接口
Filter_Plugin_PostMember_Succeedmem会员编辑成功的接口
Filter_Plugin_DelMember_Succeedmem会员删除成功的接口
Filter_Plugin_Member_Callmember,method,argsMember类的魔术方法接口
Filter_Plugin_Mebmer_AvatarmemberMebmer类的Avatar接口

附件接口

接口名称接口参数接口描述
Filter_Plugin_Admin_UploadMng_SubMenu

Filter_Plugin_Upload_SaveFiletmpUpload类的SaveFile方法接口
Filter_Plugin_Upload_SaveBase64Filestr64Upload类的SaveBase64File方法接口
Filter_Plugin_Upload_UrluploadUpload类的Url方法接口

标签接口

接口名称接口参数接口描述
Filter_Plugin_Admin_TagMng_SubMenu
标签管理
Filter_Plugin_Tag_Edit_Response
标签编辑页输出接口
Filter_Plugin_PostTag_Coretag标签编辑的核心接口
Filter_Plugin_PostTag_Succeedtag标签编辑成功的接口
Filter_Plugin_DelTag_Succeedtag标签删除成功的接口
Filter_Plugin_Tag_Calltag,method,argsTag类的魔术方法接口

主题接口

接口名称接口参数接口描述
Filter_Plugin_Admin_ThemeMng_SubMenu
主题管理

插件接口

接口名称接口参数接口描述
Filter_Plugin_Admin_PluginMng_SubMenu
插件管理

模块接口

接口名称接口参数接口描述
Filter_Plugin_Admin_ModuleMng_SubMenu
模块管理
Filter_Plugin_PostModule_Coremod模块编辑的核心接口
Filter_Plugin_PostModule_Succeedmod模块编辑成功的接口
Filter_Plugin_DelModule_Succeedmod模块删除成功的接口

浏览接口

接口名称接口参数接口描述
Filter_Plugin_Index_Begin
定义index.php接口 起动
Filter_Plugin_Index_End
定义index.php接口 结束
Filter_Plugin_Html_Js_Add
c_html_js_add.php脚本调用,JS页接口需要强制开启
Filter_Plugin_Search_Begin
搜索页接口,可以接管搜索页。
Filter_Plugin_Feed_Begin
Feed页接口,可以接管Feed页。
Filter_Plugin_ViewAuto_Beginurl定义列表输出接口
Filter_Plugin_ViewList_Beginpage,cate,auth,date,tags定义列表输出接口
Filter_Plugin_ViewPost_Beginid,alias定义列表输出接口
Filter_Plugin_ViewList_Templatetemplate处理列表页模板接口
Filter_Plugin_ViewPost_Templatetemplate处理文章页模板接口
Filter_Plugin_ViewComments_Templatetemplate处理评论模板接口

系统接口

接口名称接口参数接口描述
Filter_Plugin_Autoloadclassname定义autoload魔术方法
Filter_Plugin_Zbp_Callmethod, argsZbp类的魔术方法接口
Filter_Plugin_Zbp_CheckRightsactionZbp类的检查权限接口(检查当前用户)
Filter_Plugin_Zbp_CheckRightsByLevellevel,actionZbp类的检查权限接口(检查指定level)
Filter_Plugin_Zbp_ShowErroridortextZbp类的显示错误接口
Filter_Plugin_Zbp_BuildTemplatetemplateZbp类的重新编译模板接口
Filter_Plugin_Zbp_MakeTemplatetagstemplateZbp类的生成模板标签接口
Filter_Plugin_Zbp_BuildModule
Zbp类的生成模块内容的接口
Filter_Plugin_Zbp_Load
Zbp类的初始加载接口
Filter_Plugin_Zbp_Terminate
Zbp类的终结接口
Filter_Plugin_Cmd_Begin
cmd.php的启动接口,可以在这里拦截各种action

其他

接口名称接口参数接口描述
Filter_Plugin_Admin_Begin
后台管理页的启动接口,可以拦截后台管理请求实现自己的管理
Filter_Plugin_Admin_Header
定义后台首页header接口
Filter_Plugin_Admin_Footer
定义后台首页footer接口
Filter_Plugin_Admin_LeftMenuleftmenus定义后台左侧栏接口
Filter_Plugin_Admin_TopMenutopmenus定义后台顶部导航栏接口
Filter_Plugin_Admin_SiteInfo_SubMenu
后台首页SubMenu
Filter_Plugin_Admin_SettingMng_SubMenu
设置管理
Filter_Plugin_Admin_Js_Add
c_admin_js_add.php脚本页的接口


扫描二维码推送至手机访问。

版权声明:本文由小祥子的博客发布,如需转载请注明出处。

本文地址:http://www.xiaoxiangzi.com/post/70.html

相关文章

阿里云 自动设置安全组IP

为了安全,阿里云的服务器有安全组可以设置,比如3389 21 端口,这些端口不需要对普通用户开放,只需要对管理员开放,那么如果本地IP变了,那就需要先获取自己的IP,再登录阿里云的控制台进行设置,这样...

微信公众号数据采集历史页、文章阅读量点赞量

由于在微信之外无法访问到阅读量和点赞量还有历史页面,所以需要研究怎么在此之外来获取到数据。最终实现接口:http://www.xiaoxiangzi.com/68.html之前看过几篇前辈的文章,主要...

PHP读取Excel并且导入数据库

PHP读取Excel并且导入数据库

        这里做了个实例,帝国CMS通过Excel导入到数据库里,但不是所有人都可以用,因为我做的是我本地已经建好...

DvCMS 消息列队

加入消息队列$email_data = ["code"=>"888"];\think\Queue::push('addons\queue\jobs...