有以下两中接口形式,第一种:
<code><?php Typecho_Plugin::factory('admin/menu.php')->navBar(); ?></code>
可以通过navBar = array('插件名称', '方法名称')
来实现,例如:
<code>Typecho_Plugin::factory('admin/menu.php')->navBar = array('HelloWorld_Plugin', 'render');</code>
问题是typecho更多的是第二形式接口,该接口带有参数,例如:
<code>// 完成发布插件接口 $this->pluginHandle()->finishPublish($contents, $this);</code>
请问,第二种形式接口跟第一种有什么区别,插件中应该怎样去写?
回复内容:
有以下两中接口形式,第一种:
<code><?php Typecho_Plugin::factory('admin/menu.php')->navBar(); ?></code>
可以通过navBar = array('插件名称', '方法名称')
来实现,例如:
<code>Typecho_Plugin::factory('admin/menu.php')->navBar = array('HelloWorld_Plugin', 'render');</code>
问题是typecho更多的是第二形式接口,该接口带有参数,例如:
<code>// 完成发布插件接口 $this->pluginHandle()->finishPublish($contents, $this);</code>
请问,第二种形式接口跟第一种有什么区别,插件中应该怎样去写?
使用方法与第一种类似,例如:
<code>Typecho_Plugin::factory('Widget_Contents_Post_Edit')->finishPublish = array('HelloWorld_Plugin', 'render');</code>
第二种Widget接口还可以传入参数,例如下面的$contents
数组及Widget_Contents_Post_Edit
对象
<code>public static function render($cont<i>·本2文来源gaodai$ma#com搞$代*码网2</i><strong>搞gaodaima代码</strong>ents, $edit){ #code...}</code>
参考文档:http://docs.typecho.org/plugins/hooks