乌徒帮技术范WordPressWordPress插件 › wordpress插件制作初级教程

wordpress插件制作初级教程

分类:WordPress插件

对于wordpress使用和开发者,想要实现网站某些功能,要么通过在主题中加入相关函数以实现,要么制作自己的插件。本文将初步讲解wordpress插件制作,用实例来讲解。

本文只是实现一个只有一个文件的插件,功能简单,如果你需要有更多更细节的功能,可按本文的思路不断开发。

一、如何让插件起作用

1、插件文件头部声明:

<?php
/*
Plugin Name: Name Of The Plugin
Plugin URI: http://URI_Of_Page_Describing_Plugin_and_Updates
Description: A brief description of the Plugin.
Version: The Plugin's Version Number, e.g.: 1.0
Author: Name Of The Plugin Author
Author URI: http://URI_Of_The_Plugin_Author
*/
?>

将上面的代码拷贝到weibo.php。

2、将插件文件放在wordpress目录/wp-content/plugins/下,到后台是否可以看到有了一个新插件,激活它。

二、让插件拥有功能

完成上面第一步之后,插件没有任何功能,接下来我们要让插件拥有功能。

1、定义一个功能函数

<?php
function add_to_header(){
?>
<script>alert('这是一个插件');</script>
<?
}
?>

如果再wordpress模板中调用该函数,将弹出警告框,提示“这是一个插件”。

2、将这个函数通过add_action实现其功能

<?php?add_action('wp_head', 'add_to_header', 1); ?>

因为之前我们已经激活了插件,所以我们刷新页面时会弹出警告框。关于add_action(),你可以查看官方文件获悉其用法。

同时,你还应该了解函数add_filter(),它也将在你的插件开发中不断出现。

三、添加插件后台设置功能

在一些情况下,你需要你的插件拥有后台设置功能,并且显示为你后台设置的数据。添加后台设置的代码如下:

1、定义一个函数,用来显示后台设置的界面

<?php
function weibo_option(){
echo '<div class="wrap">';
echo '<h2>微博通同步</h2>';
echo '<form method="post" action="options.php">';
echo wp_nonce_field('update-options');
echo '<table class="form-table">';
echo '<tr valign="top">';
echo '<th scope="row">用户名 <a href="http://www.wbto.cn/?app=wp">注册</a></th>';
echo '<td><input type="text" name="wbto_username" value="'.get_option('wbto_username').'" /></td>';
echo '</tr>';
echo '<tr valign="top">';
echo '<th scope="row">密码</th>';
echo '<td><input type="password" name="wbto_password" value="'.get_option('wbto_password').'" /></td>';
echo '</tr>';
echo '</table>';
echo '<input type="hidden" name="action" value="update" />';
echo '<input type="hidden" name="page_options" value="wbto_username,wbto_password" />';
echo '<p class="submit">';
echo '<input type="submit" name="submit" id="submit" class="button-primary" value="保存更改" />';
echo '</p>';
echo '</form>';
echo '</div>';
}
?>

2、让这个后台界面显示出来,并让数据可以更新和使用

<?php
function wbto_menu() {
add_options_page('微博通同步设置', '微博通同步', 8, __FILE__, 'weibo_options');
}
add_action('admin_menu', 'wbto_menu');
?>

3、如何使用这些设置的数据

我们用get_option()函数来获取这些设置的数据,你同时需要了解update_option()和delete_option()函数。你可以看到上面的表单都提交到了options.php,那么每一个name值将对应get_option()的id,例如本例中,我们可以用get_option('wbto_username')来获取后台设置的微博通用户名。

四、总结:插件开发的一般程式+实例

通过上文的学习,你可以到wordpress微博通同步插件一文自己阅读这个插件的代码,并自己尝试修改得到自己想要的功能。

wordpress插件制作的一般程式:

Step 1:定义插件的信息

/*
* Plugin Name: ABitNo IN Head
* Plugin URI: http://www.utubon.com/
* Version: 0.1
* Author: frustigor
* Description: Put annotation 'ABitNo is here' to the header
*/

Step 2:创造一个Class和相关的function

if(!class_exists('AbitnoInHead')) {
class AbitnoInHead {
function abitno_in_head() {
echo('<!-- ABitNo is here ! -->');
}
}
}

Step 3:实例化创建的Class

if( class_exists('AbitnoInHead') ) {
$abitno_head = new AbitnoInHead();
}

Step 4:添加Action和Filter

if(isset ($abitno_head)){
add_action('wp_head', array(&$abitno_head, 'abitno_in_head'), 1);
}

整个插件的一般框架即包含:声明+功能函数+后台界面函数+wordpress挂钩(action、filter)。

填写个人信息,赶快回复吧!