此文本來發表於個人博客 老高的技術博客 ,歡迎和老高交流!php
第一節咱們瞭解了一個插件的基本構成,下面咱們須要一個實例練習鞏固。html
真趕巧,老高最近正在改版百度sitemap提交插件for typecho,下面和老高一塊兒改版吧!api
不知道你們用過WP版的百度結構化插件沒?老高就是研究了那個插件,觀察其API,而後就寫出了typecho版的。curl
爲何要改版呢?typecho
百度站長最近推出新的接口,使用起來更簡單,工做量不算大,索性就改改吧!url
新版插件須要實現哪些功能?spa
接口調用地址(API)在哪兒?插件
百度站長後臺,PHP接口實例:code
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插件的代碼盜版一下,刪除掉全部註釋,添加本身的信息。orm
<?php 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
當即去後臺插件處,如圖
爲何是即插即用?
由於咱們沒有實現插件的方法,因此沒法啓用。
下一節咱們讓咱們的插件變的豐滿起來!
本節完。