typecho插件编写教程(一):Hello World

前端之家收集整理的这篇文章主要介绍了typecho插件编写教程(一):Hello World前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

@H_403_0@最近老高正在编写一个关于typecho的插件,由于typecho不像wordpress,有那么多的文档参考,写一个插件还是遇到了很多的坑,不过随着研究的不断深入,老高也慢慢上手了,于是总结出此篇编写教程分享给大家!


@H_4030@

I. 从HelloWorld说起


@H
4030@

基本信息


@H
403_0@想必想要开发typecho的你一定阅读过官方示例插件HelloWorld的源码吧?


@H_403_0@我们先看看usr/plugins/HelloWorld/Plugin.PHP文件前几行
<div class="codetitle"><a style="CURSOR: pointer" data="835" class="copybut" id="copybut835" onclick="doCopy('code835')"> 代码如下:
<div class="codebody" id="code835">
if (!defined('TYPECHO_ROOT_DIR')) exit;
/**

  • Hello World
  • @package HelloWorld
  • @author qining
  • @version 1.0.0
  • @link http://typecho.org
    */
    ...
    ...
这几行代码是一个插件的基本信息,我们由代码可以得出以下与插件相关的基本信息

@H_403_0@插件说明 ---> Hello World 插件包名 ---> HelloWorld 插件作者 ---> qining 插件版本 ---> 1.0.0 插件链接 ---> http://typecho.org

@H_403_0@同时这些信息都会显示插件页中,如下图

@H_403_0@

@H_403_0@

插件结构

@H_403_0@我们继续向后面的代码看,一个最简单的插件结构如下(为了缩短篇幅,老高移除了具体方法的实现)

@H_403_0@每个方法基本都有注释,老高不再赘述。

@H_403_0@看起来很简单吧?其实里面还是有不少坑的。

@H_403_0@
代码如下:
  • 激活插件方法,如果激活失败,直接抛出异常
  • @access public
  • @return void
  • @throws Typecho_PluginException
    */
    public static function activate(){}


    @H
    403_0@ /**
  • 禁用插件方法,如果禁用失败,直接抛出异常
  • @static
  • @access public
  • @return void
  • @throws Typecho_PluginException
    */
    public static function deactivate(){}


    @H
    403_0@ /**
  • 获取插件配置面板
  • @access public
  • @param Typecho_Widget_Helper_Form $form 配置面板
  • @return void
    */
    public static function config(Typecho_Widget_HelperForm $form){}


    @H
    403_0@ /**
  • 个人用户的配置面板
  • @access public
  • @param Typecho_Widget_Helper_Form $form
  • @return void
    */
    public static function personalConfig(Typecho_Widget_HelperForm $form){}


    @H
    403_0@ /**
  • 插件实现方法
  • @access public
  • @return void
    */
    public static function render(){}
    }
  • @H_403_0@

    插件流程

    @H_403_0@插件的基本流程是这样的。

    @H_403_0@1.当我们的插件写好后会出现在后台 2.点击启用按钮后,会执行对应插件类的activate方法 3.插件与目标插件点关联,等待触发 4.当点击停用的时候调用deactivate方法

    @H_403_0@本节完。

    @H_403_0@下一节老高会更详细的说明插件类的方法

    猜你在找的PHP相关文章