萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> typecho插件編寫教程(二):寫一個新插件

typecho插件編寫教程(二):寫一個新插件

   這篇文章主要介紹了typecho插件編寫教程(二):寫一個新插件,本文是系列文章的第二篇,需要的朋友可以參考下

  第一節我們了解了一個插件的基本構成,下面我們需要一個實例練習鞏固。

  真趕巧,老高最近正在改版百度sitemap提交插件for typecho,下面和老高一起改版吧!

  准備

  不知道大家用過WP版的百度結構化插件沒?老高就是研究了那個插件,觀察其API,然後就寫出了typecho版的。

  為什麼要改版呢?

  百度站長最近推出新的接口,使用起來更簡單,工作量不算大,索性就改改吧!

  新版插件需要實現哪些功能?

  1.文章實時推送

  2.推送歷史數據

  3.站點地圖

  接口調用地址(API)在哪兒?

  百度站長後台,PHP接口實例:

   代碼如下:

  $urls = array(

  'http://www.example.com/1.html',

  'http://www.example.com/2.html',

  );

  $api = 'http://data.zz.baidu.com/urls?site=www.phpgao.com&token=你的准入密鑰';

  $ch = curl_init();

  $options = array(

  CURLOPT_URL => $api,

  CURLOPT_POST => true,

  CURLOPT_RETURNTRANSFER => true,

  CURLOPT_POSTFIELDS => implode("n", $urls),

  CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),

  );

  curl_setopt_array($ch, $options);

  $result = curl_exec($ch);

  echo $result;

  開始動手

  讓老高先把上一節HELLO_WORLD插件的代碼盜版一下,刪除掉所有注釋,添加自己的信息。

   代碼如下:

  if (!defined('__TYPECHO_ROOT_DIR__')) exit;

  /**

  * 百度結構化插件教程版

  *

  * @package BaiduSubmitTest

  * @author 老高

  * @version 0.4

  * @link http://www.phpgao.com/typecho_plugin_baidusubmit.html

  */

  class BaiduSubmitTest_Plugin implements Typecho_Plugin_Interface

  {

  public static function activate(){}

  public static function deactivate(){}

  public static function config(Typecho_Widget_Helper_Form $form){}

  public static function personalConfig(Typecho_Widget_Helper_Form $form){}

  public static function render(){}

  }

  以上代碼老高起了個名字叫裸插件,意思是啥都干不了的插件,每次寫插件的時候老高都會准備一個裸插件。

  我們將其放在usr/plugins/BaiduSubmitTest/Plugin.php

  立即去後台插件處,如圖

  為什麼是即插即用?

  因為我們沒有實現插件的方法,所以無法啟用。

  下一節我們讓我們的插件變的豐滿起來!

  本節完。

copyright © 萬盛學電腦網 all rights reserved