第一節(jié)我們了解了一個插件的基本構(gòu)成,下面我們需要一個實例練習(xí)鞏固。
真趕巧,老高最近正在改版百度sitemap提交插件for typecho,下面和老高一起改版吧!
準備
不知道大家用過WP版的百度結(jié)構(gòu)化插件沒?老高就是研究了那個插件,觀察其API,然后就寫出了typecho版的。
為什么要改版呢?
百度站長最近推出新的接口,使用起來更簡單,工作量不算大,索性就改改吧!
新版插件需要實現(xiàn)哪些功能?
1.文章實時推送
2.推送歷史數(shù)據(jù)
3.站點地圖
接口調(diào)用地址(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;
開始動手
讓老高先把上一節(jié)HELLO_WORLD插件的代碼盜版一下,刪除掉所有注釋,添加自己的信息。
if (!defined('__TYPECHO_ROOT_DIR__')) exit;
/**
* 百度結(jié)構(gòu)化插件教程版
*
* @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
立即去后臺插件處,如圖
為什么是即插即用?
因為我們沒有實現(xiàn)插件的方法,所以無法啟用。
下一節(jié)我們讓我們的插件變的豐滿起來!
本節(jié)完。