国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 網(wǎng)站 > 建站經(jīng)驗(yàn) > 正文

type-cho插件編寫教程(四):插件掛載

2019-11-02 14:42:14
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

   這篇文章主要介紹了typecho插件編寫教程(四):插件掛載,本文講解了如何找到插件點(diǎn)并掛載插件的方法,需要的朋友可以參考下

  終于,在能夠保存配置信息后,我們可以開(kāi)始編寫插件的掛載功能了。

  首先我們需要知道系統(tǒng)為我們?cè)诟鱾€(gè)關(guān)鍵的環(huán)節(jié)都預(yù)留了插件點(diǎn)給我們,系統(tǒng)運(yùn)行到插件點(diǎn)時(shí),會(huì)檢測(cè)到是否有插件掛在這個(gè)點(diǎn)上,然后執(zhí)行插件的邏輯!

  插件的工作就是找到合適的插件點(diǎn),掛上去,然后執(zhí)行自己的邏輯。

  插件點(diǎn),插件鉤子,插件接口。。。在老高這兒是一個(gè)概念

  官方的插件接口及功能列表

  我們的插件需要執(zhí)行的邏輯在這里,Widget_Contents_Post_Edit類的finishPublish方法

  文件路徑var/Widget/Contents/Post/Edit.php:736,可以看到,接口為我們傳遞了兩個(gè)參數(shù),一個(gè)是發(fā)布的內(nèi)容,另一個(gè)是類本

QQ網(wǎng)名總排行[www.la240.com/html2017/1/7/]
身。有了類本身,我們可以在插件中隨意調(diào)用他的公共方法!

  代碼如下:

  // 文章完成發(fā)布插件接口

  $this->pluginHandle()->finishPublish($contents, $this);

  還有一個(gè)頁(yè)面發(fā)布接口,下面的代碼會(huì)提到。

  如何掛載

  代碼如下,有省略。

  代碼如下:

  

  class BaiduSubmitTest_Plugin implements Typecho_Plugin_Interface

  {

  public static function activate(){

  //掛載發(fā)布文章和頁(yè)面的接口

  Typecho_Plugin::factory('Widget_Contents_Post_Edit')->finishPublish = array('BaiduSubmitTest_Plugin', 'send');

  Typecho_Plugin::factory('Widget_Contents_Page_Edit')->finishPublish = array('BaiduSubmitTest_Plugin', 'send');

  return '插件安裝成功,請(qǐng)進(jìn)入設(shè)置填寫準(zhǔn)入密鑰';

  }

  ...

  ...

  public static function render($contents, $class){

  //do something

  }

  }

  有代碼我們看到,在插件激活時(shí),系統(tǒng)將插件類BaiduSubmitTest_Plugin的render方法綁定到finishPublish的接口上!由于finishPublish會(huì)傳遞兩個(gè)參數(shù),所以render方法也要接受兩個(gè)參數(shù)。

  此時(shí),只要插件正常啟用,當(dāng)我們發(fā)布完某一篇文章后,系統(tǒng)就會(huì)自動(dòng)調(diào)用BaiduSubmitTest_Plugin:render()方法了。

  仔細(xì)觀察源代碼,你會(huì)發(fā)現(xiàn)此接口沒(méi)有返回值,如果有返回值怎么辦?

  這個(gè)情況比較復(fù)雜,老高先留個(gè)坑。

  為什么叫render方法?

  老高從hello world中復(fù)制粘貼過(guò)來(lái)的,一直沒(méi)有改名。

  接下來(lái)做什么

  掛載點(diǎn)搞定了,下一步就是執(zhí)行我們的核心邏輯代碼了。

  老高就留到下一篇吧!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 玉龙| 南投县| 房产| 马龙县| 灌阳县| 余姚市| 文化| 大关县| 天津市| 咸丰县| 定襄县| 衡阳县| 灵台县| 浦江县| 河池市| 施秉县| 德格县| 万源市| 紫金县| 株洲县| 江阴市| 东阿县| 富锦市| 新田县| 明光市| 囊谦县| 华池县| 德阳市| 皋兰县| 南郑县| 潜山县| 张掖市| 肇源县| 北碚区| 鄂尔多斯市| 青河县| 西乌珠穆沁旗| 陕西省| 称多县| 富民县| 北流市|