Typecho 插件开发基础

<?php

/**
 * 标题 插件说明
 *
 * @package 添加标题
 * @author Fan
 * @version 1.0.0
 * @link http://cnblogs.com/fan-bk
 */
 
class FanWorld_Plugin implements Typecho_Plugin_Interface{
    
    /* 激活插件方法 */
    public static function activate(){
        Typecho_Plugin::factory('admin/menu.php')->navBar = array('FanWorld_Plugin', 'render');  //先找到接口 详细状况看最后连接
    }

    /* 禁用插件方法 */
    public static function deactivate(){}

    /* 插件配置方法 */
    public static function config(Typecho_Widget_Helper_Form $form){
        /** 配置 */
        $name = new Typecho_Widget_Helper_Form_Element_Text('word', NULL, 'fan', _t('设置标题'));
        $href = new Typecho_Widget_Helper_Form_Element_Text('href', NULL, 'http://lindn.cn', _t('设置连接'));
        $form->addInput($name);
        $form->addInput($href);
    }

    /* 我的用户的配置方法 */
    public static function personalConfig(Typecho_Widget_Helper_Form $form){}

    /* 插件实现方法 */
    public static function render(){
      /*
调用插件配置项的方式是:Options + 插件名(不带_Plugin) + 配置项名
      Typecho_Widget::widget('Widget_Options')->plugin('HelloWorld')->word
      固然,你也能够经过 Helper 助手来获取
      Helper::options()->plugin('HelloWorld')->word
 */
 
echo '<a href="'.Typecho_Widget::widget('Widget_Options')->plugin('FanWorld')->href.'" class="author">' . Typecho_Widget::widget('Widget_Options')->plugin('FanWorld')->word . '</a>'; } }

细节注意:php

插件  文件夹名 须要与类名相同  插件文件名必须是Plugintypecho

文件夹名:FanWorldspa

文件名:Plugin.php插件

类名: FanWorld_Plugincode

插件说明:orm

  • activate: 插件的激活接口,主要填写一些插件的初始化程序。
  • deactivate: 这个是插件的禁用接口,主要就是插件在禁用时对一些资源的释放。
  • config: 插件的配置面板,用于制做插件的标准配置菜单。
  • personalConfig: 我的用户的配置面板,基本用不到。
  • render: 本身定义的方法,用来实现插件要完成的功能。

 

官方说明:https://www.typechodev.com/docs/zh_CN/typecho-extend/plugin/#-hello-worldblog