WORDPRESS插件开发(二)HELLO WORLD改进版

在上一篇文章中WORDPRESS插件开发(一)HELLO WORLD,演示了Hello World的最简单实现,只是在每篇文章的后面加入Hello World字符,而且字符也是写死的。

如果用户需要自己输入一些文字,然后在每篇文章的后面显示,改怎么做呢?

首先要在后台有一个菜单,点击菜单显示一个页面,在页面中有一个输入框,用户输入完毕后点击保存,将内容保存到数据库,显示每篇文章时,提取保存的信息到页面中就可以了。

实现思路
激活插件时,使用add_option函数向wp_options添加一个字段,禁止插件时,使用delete_option函数删除。
在wordpress后台设置菜单添加插件菜单,添加菜单时使用add_options_page函数
点击菜单时,显示页面,页面中一个输入框一个提交按钮。

代码实现:

<?php
/*
Plugin Name: Hello-World
Plugin URI: http://1100w.com/
Description: 最简单的插件实现,在每篇文章的后面追加hello world
Version: 1.0
Author: 1100w
Author URI: http://1100w.com
License: GPL
*/
add_filter(‘the_content‘,‘hello_world‘);
/* Runs when plugin is activated */
register_activation_hook(__FILE__,‘hello_world_install‘); 

/* Runs on plugin deactivation*/
register_deactivation_hook( __FILE__, ‘hello_world_remove‘ );

function hello_world_install() {
add_option("hello_world_data", ‘Default‘, ‘‘, ‘yes‘);
}

function hello_world_remove() {
delete_option(‘hello_world_data‘);
}
if ( is_admin() ){

    /* Call the html code */
    add_action(‘admin_menu‘, ‘hello_world_admin_menu‘);

    function hello_world_admin_menu() {
        add_options_page(‘Hello World‘, ‘Hello World‘, ‘administrator‘,‘hello-world‘, ‘hello_world_html_page‘);
    }
}
?>
<?php
function hello_world_html_page() {
?>
<div>
<h2>Hello World Options</h2>

<form method="post" action="options.php">
<?php wp_nonce_field(‘update-options‘); ?>

<table width="510">
<tr valign="top">
<th width="92" scope="row">输入显示内容</th>
<td width="406">
<input name="hello_world_data" type="text" id="hello_world_data"
value="<?php echo get_option(‘hello_world_data‘); ?>" />
(ex. Hello World)</td>
</tr>
</table>

<input type="hidden" name="action" value="update" />
<input type="hidden" name="page_options" value="hello_world_data" />

<p>
<input type="submit" value="<?php _e(‘Save Changes‘) ?>" />
</p>

</form>
</div>
<?php
    }
?>
<?php
//Callback function
function hello_world($content)
{
     //Checking if on post page.
     if ( is_single() ) {
         return $content . ‘<h1>‘.get_option(‘hello_world_data‘).‘</h1>‘;
     }
     else {
         return $content;
     }
}
?>

显示效果

时间: 2024-10-13 04:35:21

WORDPRESS插件开发(二)HELLO WORLD改进版的相关文章

黄聪:《跟黄聪学WordPress插件开发》

续<跟黄聪学WordPress主题开发>之后,又一个作品完成!<跟黄聪学Wordpress插件开发>,国内最好的Wordpress插件开发视频教程!! 目录预览: WordPress插件简介 WordPress插件的创建 认识钩子:动作(add_action与do_action) 认识钩子:带参数的动作 认识钩子:常用的动作实用案例 认识钩子:过滤器(add_filter与apply_filters) 认识钩子:带参数的过滤器 认识钩子:常用的过滤器实用案例 后台整合:创建菜单和子

《WordPress插件开发手冊》文件夹

翻译前言:国内没有关于WordPress插件开发比較具体而且系统的资料 前言 第一章:准备一个本地开发环境 介绍 在你的电脑上安装一个站点server 下载并配置一个本地的WordPress 创建一个本地版本号库(译者注:local subversion repository) 将原始文件导入到本地版本号库中 从一个版本号库中拉取文件(译者注:check out) 把改动的文件提交到版本号库中(译者注:commit) 还原未被提交的文件(译者注:revert) 查看文件历史记录并恢复到某个历史版

《WordPress插件开发手册》目录

翻译前言:国内没有关于WordPress插件开发比较详细并且系统的资料 前言 第一章:准备一个本地开发环境 介绍 在你的电脑上安装一个网站服务器 下载并配置一个本地的WordPress 创建一个本地版本库(译者注:local subversion repository) 将原始文件导入到本地版本库中 从一个版本库中拉取文件(译者注:check out) 把修改的文件提交到版本库中(译者注:commit) 还原未被提交的文件(译者注:revert) 查看文件历史记录并恢复到某个历史版本 安装一个专

针对wordpress的二次开发

0.基础nginx\mysql\php\html\css\js 1. 搭建环境mac + nginx + mysql + wordpresshttp://segmentfault.com/a/1190000002556269 2. 熟悉功能创建分类发布文章上传图片其他http://www.diyzhan.com/2014/02/wordpress-admin-panel/ 3. 数据库表结构http://blog.csdn.net/liujiyong7/article/details/80421

通过nfs挂载共享目录的方式搭建lamp平台并安装wordpress(二)

在A主机上安装httpd,php,mariadb,nfs-utils,作为nfs client,在B主机上安装nfs-tuils,作为nfs server.A主机IP 172.16.252.115,B主机IP 172.16.251.119. 1.在A主机上安装httpd,php,php-mysql,mariadb,nfs-utils ~]# yum install httpd php php-mysql mariadb-server nfs-utils 2.在B主机上安装nfs-tuils,创建

wordpress(二)wordpress环境迁移

迁移wordpress到服务器 本地环境如下 win8.1 appser 服务器环境如下 centos7 lnmp 1.使用phpmyadmin备份本地wordpress站点的数据库 2.备份本地wordpress站点的整个文件夹 3.修改wordpress站点文件夹中的wo_config.php文件将mysql数据库的用户名还有密码全部改为服务器上面的用户名和密码 4.上传修改过的wordpress站点文件夹到centos网站根目录. 5.在centos上面的/usr/local/nginx/

通过samba共享目录的方式搭建lamp平台并安装wordpress(二)

在A主机上安装httpd,php,mariadb,samba-client,作为samba client,在B主机上安装samba,作为samba server.A主机IP192.168.199.157,B主机IP 192.168.199.174. 1.在A主机上安装httpd,php,php-mysql,mariadb,samba-client ~]# yum install httpd php php-mysql mariadb-server samba-client 2.在B主机上安装sa

wordpress插件开发挂载css和js

define( 'CSS', plugin_dir_url( __FILE__ ) . 'css/' );//定义css根目录 define( 'JS', plugin_dir_url( __FILE__ ) . 'js/' );//定义js根目录 function sc_meeting_map_load_css(){ wp_enqueue_style( 'xiaofan_css' ,CSS . "xiaofan.css");//css wp_enqueue_script( 'xiao

wordpress——在插件后台管理页面中添加javascript和ajax

最近在开发一个wordpress插件,需要在插件的后台管理页面上,添加自己写的javascript文件,以达到一些功能. 查了好几天的文档和资料,终于实现了. 这里先介绍下wordpress后台页面添加javascript的过程,再介绍添加ajax的过程. 添加javascript 首先我们需要知道wordpress插件开发的框架,然后再介绍javascript添加的步骤. 添加插件设置页面 开发插件,总需要在管理后台添加自己的插件设置页面.插件设置子页面,在这些页面中,可以设置和保存插件的一些