首页 >php教程 >php手册 >typecho插件编写教程(二):写一个新插件

typecho插件编写教程(二):写一个新插件

WBOY
WBOY原创
2016-06-13 09:03:34891浏览

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

  立即去后台插件处,如图

  为什么是即插即用?

  因为我们没有实现插件的方法,所以无法启用。

  下一节我们让我们的插件变的丰满起来!

  本节完。

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn