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中插件开发原理.说白了,插件开发的原理就是:动态加载技 ...
随机推荐
- ELK日志系统:Filebeat使用及Kibana如何设置登录认证(转)
原文地址:http://www.cnblogs.com/yjmyzz/p/filebeat-turorial-and-kibana-login-setting-with-nginx.html 根据el ...
- RESTful接口规范
一. 什么是RESTful REST与技术无关,代表的是一种软件架构风格,REST是Representational State Transfer的简称,中文翻译为“表征状态转移” REST从资源的角 ...
- go语言net包udp socket的使用
udp与tcp的不同在于客户端请求方式不同,udp缺少Accept函数. 一个简单的udp客户端: package main; import ( "net" "log&q ...
- 【gRPC使用问题3】生成出来无法识别Google.Api.AnnotationsReflection.Descriptor
1.问题截图: 2.解决方案: Install the package "Google.Api.Gax.Grpc". From the Package Manager Consol ...
- 当前上下文中不存在viewbag
参考链接:http://www.cnblogs.com/chas/p/5076297.html view文件夹下的web.config中的appsetting节点中缺少了 <add key=&q ...
- VSS源代码管理器运行代码分析工具的命令
当你发现代码库总是报需要联系管理员运行代码分析工具时,你可以使用命令分析代码库代码解决: To fix the database problems, you can restart the analy ...
- UFT12 更新模式
一. 更新测试(非常规运行模式). 如果您知道应用程序已更改, 请以下列某种模式运行测试以相应更新测试: 维护运行模式.如果预计UFT 无法识别测试中的对象, 则使用此模式.当测试运行时, UFT ...
- andorid 帧布局
framelayout.xml帧布局 <?xml version="1.0" encoding="utf-8"?> <FrameLayout ...
- PHP 弹窗 源代码 css Jquery.js
// 每个弹窗的标识 var x =0; var idzt = new Array(); var Window = function(config){ //ID不重复 idzt[x] = " ...
- hdu 2444(二分图) The Accomodation of Students
http://acm.hdu.edu.cn/showproblem.php?pid=2444 大意是给定n个学生,他们之间可能互相认识,首先判断能不能将这些学生分为两组,使组内学生不认识: 现想将学生 ...