>백엔드 개발 >PHP 튜토리얼 >typecho插件编写教程(二):写一个新插件_PHP教程

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

WBOY
WBOY원래의
2016-07-13 09:52:46969검색

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

  立即去后台插件处,如图

  为什么是即插即用?

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

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

  本节完。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1007639.htmlTechArticletypecho插件编写教程(二):写一个新插件 这篇文章主要介绍了typecho插件编写教程(二):写一个新插件,本文是系列文章的第二篇,需要的朋友可...
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.