typecho插件写作教程(四):插件的安装
首先,我们需要知道系统在所有关键环节都为我们保留了插件点。当我们将系统运行到插件点时,我们将检测这一点中是否有插件,然后执行插件的逻辑。
插件的工作是找到正确的插件点,挂起它,然后执行自己的逻辑。
插件点,插件钩子,插件接口。
官方插件接口和功能列表
我们的插件需要执行的逻辑,对widget_contents_post_edit班finishpublish方法
我们可以看到接口为我们传递了两个参数,一个是出版物的内容,另一个是类本身,用类本身,我们可以在插件中随意调用他的通用方法()!
复制代码代码如下所示:
完整的发布/插件接口
美元-> pluginhandle()-> finishpublish(合内容,美元);
还有一个页面发布接口,将在下面的代码中提到。
如何安装
代码如下,省略。
复制代码代码如下所示:
< PHP
baidusubmittest_plugin typecho_plugin_interface类实现
{
公共静态函数激活(){
挂载发布的文章和页面接口
typecho_plugin::厂('widget_contents_post_edit)-> finishpublish =阵列('baidusubmittest_plugin ',);
typecho_plugin::厂('widget_contents_page_edit)-> finishpublish =阵列('baidusubmittest_plugin ',);
返回插件已成功安装,请输入安装程序以填写访问密钥;
}
…
…
公共静态函数呈现($内容,$ Class){
做某事
}
}
我们的代码,我们看到,当插件被激活,系统绑定的Render方法baidusubmittest_plugin插件类的finishpublish接口!因为finishpublish经过两参数,渲染方法还可以接受两个参数。
在这一点上,只要插件通常是启用,系统会自动调用baidusubmittest_plugin:渲染()方法时,我们已经完成了一篇文章。
仔细查看源代码,您会发现接口不返回值,如果返回值会怎样
这种情况比较复杂,所以先留个坑。
为什么渲染方法被调用
你好世界从高拷贝和粘贴,没有改变。
下一步该怎么办
挂载点完成了,下一步是执行我们的核心逻辑代码。
Lao Gao将休假到下一篇文章!