typecho插件編寫教程2 - 新插件

此文本來發表於個人博客 老高的技術博客 ,歡迎和老高交流!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

當即去後臺插件處,如圖

新插件

爲何是即插即用?

由於咱們沒有實現插件的方法,因此沒法啓用。

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

本節完。

相關文章
相關標籤/搜索