当前位置:首页 > CMS教程 > 其它CMS > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2021-05-27 12:40:39 浏览: 评论:0 

这篇文章主要介绍了typecho插件编写教程(一):Hello World,本文讲解了插件的文件结构、插件信息、插件结构、插件流程等内容,需要的朋友可以参考下

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

I. 从HelloWorld说起

基本信息

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

我们先看看usr/plugins/HelloWorld/Plugin.php文件前几行,代码如下:

  1. if (!defined('__TYPECHO_ROOT_DIR__')) exit
  2. /** 
  3.  * Hello World 
  4.  * 
  5.  * @package HelloWorld 
  6.  * @author qining 
  7.  * @version 1.0.0 
  8.  * @link http://typecho.org 
  9.  */ 
  10.  ... 
  11.  ... 

这几行代码是一个插件的基本信息,我们由代码可以得出以下与插件相关的基本信息

插件说明 ---> Hello World

插件包名 ---> HelloWorld

插件作者 ---> qining

插件版本 ---> 1.0.0

插件链接 ---> http://typecho.org

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

插件结构

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

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

看起来很简单吧?其实里面还是有不少坑的,代码如下:

  1. class HelloWorld_Plugin implements Typecho_Plugin_Interface 
  2.     /** 
  3.      * 激活插件方法,如果激活失败,直接抛出异常 
  4.      * 
  5.      * @access public 
  6.      * @return void 
  7.      * @throws Typecho_Plugin_Exception 
  8.      */ 
  9.     public static function activate(){} 
  10.     /** 
  11.      * 禁用插件方法,如果禁用失败,直接抛出异常 
  12.      * 
  13.      * @static 
  14.      * @access public 
  15.      * @return void 
  16.      * @throws Typecho_Plugin_Exception 
  17.      */ 
  18.     public static function deactivate(){} 
  19.  
  20.     /** 
  21.      * 获取插件配置面板 
  22.      * 
  23.      * @access public 
  24.      * @param Typecho_Widget_Helper_Form $form 配置面板 
  25.      * @return void 
  26.      */ 
  27.     public static function config(Typecho_Widget_Helper_Form $form){} 
  28.  
  29.     /** 
  30.      * 个人用户的配置面板 
  31.      * 
  32.      * @access public 
  33.      * @param Typecho_Widget_Helper_Form $form 
  34.      * @return void 
  35.      */ 
  36.     public static function personalConfig(Typecho_Widget_Helper_Form $form){} 
  37.  
  38.     /** 
  39.      * 插件实现方法 
  40.      * 
  41.      * @access public 
  42.      * @return void 
  43.      */ 
  44.     public static function render(){} 

插件流程

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

1.当我们的插件写好后会出现在后台

2.点击启用按钮后,会执行对应插件类的activate方法

3.插件与目标插件点关联,等待触发

4.当点击停用的时候调用deactivate方法

本节完。

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

Tags: typecho插件编写

分享到: