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>'; } }
细节注意:
插件 文件夹名 需要与类名相同 插件文件名必须是Plugin
文件夹名:FanWorld
文件名:Plugin.php
类名: FanWorld_Plugin
插件说明:
- activate: 插件的激活接口,主要填写一些插件的初始化程序。
- deactivate: 这个是插件的禁用接口,主要就是插件在禁用时对一些资源的释放。
- config: 插件的配置面板,用于制作插件的标准配置菜单。
- personalConfig: 个人用户的配置面板,基本用不到。
- render: 自己定义的方法,用来实现插件要完成的功能。
官方说明:https://www.typechodev.com/docs/zh_CN/typecho-extend/plugin/#-hello-world
Typecho 插件开发基础的更多相关文章
- jquery插件开发基础入门
jquery插件开发基础入门 入门 编写一个jquery插件开始于给jquery.fn加入新的功能属性,此处添加的对象属性的名称就是你的插件名称 jQuery.fn,myPlugin = functi ...
- IDEA插件开发基础
由于简易ORM的需要,想要做一些代码自动生成功能(通过右键菜单辅助) 半自动编写代码,故考虑需要开发IDE插件(我司现使用IDEA) 1.例子代码http://confluence.jetbrains ...
- Visual Studio插件开发基础
Visual Studio插件主要有两种:Add-in 和 VSX(Visual Studio eXtensibility) 两者区别可参考这篇文章:Visual Studio Extensions ...
- JavaScript学习笔记(四)——jQuery插件开发与发布
jQuery插件就是以jQuery库为基础衍生出来的库,jQuery插件的好处是封装功能,提高了代码的复用性,加快了开发速度,现在网络上开源的jQuery插件非常多,随着版本的不停迭代越来越稳定好用, ...
- JavaScript学习总结(四)——jQuery插件开发与发布
jQuery插件就是以jQuery库为基础衍生出来的库,jQuery插件的好处是封装功能,提高了代码的复用性,加快了开发速度,现在网络上开源的jQuery插件非常多,随着版本的不停迭代越来越稳定好用, ...
- (地址)eclipse插件开发攻略的访问地址
园子地址: http://www.cnblogs.com/liuzhuo/category/257208.html 关键字: Eclipse插件开发彻底攻略 eclipse插件开发基础篇之
- Android Studio 插件开发详解三:翻译插件实战
转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/78113868 本文出自[赵彦军的博客] 一:概述 如果不了解插件开发基础的同学可以 ...
- JavaScript学习总结(五)——jQuery插件开发与发布
jQuery插件就是以jQuery库为基础衍生出来的库,jQuery插件的好处是封装功能,提高了代码的复用性,加快了开发速度,现在网络上开源的jQuery插件非常多,随着版本的不停迭代越来越稳定好用, ...
- Android中插件开发篇总结和概述
刚刚终于写完了插件开发的最后一篇文章,下面就来总结一下,关于Android中插件篇从去年的11月份就开始规划了,主要从三个方面去解读Android中插件开发原理.说白了,插件开发的原理就是:动态加载技 ...
随机推荐
- swift - view的指定位置切圆角
1. extension UIView{ func addCorner(conrners: UIRectCorner , radius: CGFloat) { let maskPath = UIBez ...
- java 线程Thread 技术--线程状态与同步问题
线程技术第三篇: 线程的状态: 1. 创建状态: 当用new 操作符创建一个新的线程对象时,该线程就处于创建状态,系统不为它分配资源 2.可运行状态:当线程调用start 方法将为线程分配必须的系统资 ...
- LRU缓存原理
LRU(Least Recently Used) LRU是近期最少使用的算法,它的核心思想是当缓存满时,会优先淘汰那些近期最少使用的缓存对象. 采用LRU算法的缓存有两种:LrhCache和DisL ...
- 弹出PopupWindow背景变暗的实现
弹出PopuoWindow后 代码里设置的是PopupWindow默认获取焦点 所以PopupWindow显示的时候其它控件点击是没有反应的 用到的方法是 pwMyPopWindow.setFocus ...
- oracle 分页 where 三层
查询[start,start+limit],包含start,包含start+limit,如start=21,limit=10结果就是21到30,包含21和30SELECT * FROM (SELECT ...
- 转:css知多少(12)——目录
<css知多少>系列就此完结了.常来光顾的朋友可能会觉得突然:css的知识点还有很多,怎么突然就完了,还没讲完呢?这样说是对的.不过凡事都有一个定位,如果盲目求多,定位模糊,那样就没有目的 ...
- HTML&&css练习
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- JVM 体系结构概述 (一)
一.jvm运行在操作系统之上的,它与硬件没有直接交互: 二.JVM体系结构概览 JVM的基本结构:类加载器.执行引擎.运行时数据区.本地方法接口: 过程:class文件 ----> 类加载器 - ...
- spec文件写作规范
spec文件写作规范 2008-09-28 11:52:17 分类: LINUX 1.The RPM system assumes five RPM directories BUILD:rpmbuil ...
- 在开发node.js中,关于使用VS2013插件出现一直读取资源的问题
情况描述: 1.安装了VS2013: 2.安装了VS开发node.js的插件; 3.打开以前的工程文件,有的可以打开,有的打不开.而且打不开的始终停留在读取资源的界面.很痛苦的.等半天都没有反应.到底 ...