如何创建第一个 WordPress 插件? 带示例代码的分步导览
已发表: 2017-04-27
如何创建 WordPress 插件并开始 WordPress 插件开发?
您是新的 WordPress 开发人员吗? 您最近开始使用 WordPress 了吗? 您是否正在寻找创建新的 WordPress 插件?
如何从头开始创建 wordpress 插件? 好吧,你来对地方了。
在本教程中,我们将介绍如何从头开始创建您的Hello World WordPress Plugin
。 这是 WordPress 插件开发教程的分步指南。
在我们开始之前是一个 WordPress 插件设计以及我们要做的事情:
- 我们将创建简单的 Hello World WordPress 插件
- 创建包含所有插件代码的文件
crunchify-hello-world.php
- 创建包含基本信息的
readme.txt
文件- 插件元数据
- 描述
- 安装步骤
- 常见问题部分
- 截图
- 更改日志
- 插件将具有以下功能
Settings
菜单下的新菜单Crunchify Plugin
- 新插件
admin page
- 用户可以选择向一个
Textfield
add value
-
Save button
以保存设置 - 插件会将
append saved text
到every post
的底部
让我们开始吧:
步骤 1 创建插件元数据。
创建文件crunchify-hello-world.php
并首先放置以下代码。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
< ? php /** * Crunchify Hello World Plugin is the simplest WordPress plugin for beginner. * Take this as a base plugin and modify as per your need. * * @package Crunchify Hello World Plugin * @author Crunchify * @license GPL-2.0+ * @link https://crunchify.com/tag/wordpress-beginner/ * @copyright 2017 Crunchify, LLC. All rights reserved. * * @wordpress-plugin * Plugin Name: Crunchify Hello World Plugin * Plugin URI: https://crunchify.com/tag/wordpress-beginner/ * Description: Crunchify Hello World Plugin is the simplest WordPress plugin for beginner. Take this as a base plugin and modify as per your need. * Version: 3.0 * Author: Crunchify * Author URI: https://crunchify.com/ * Text Domain: crunchify-hello-world * Contributors: Crunchify * License: GPL-2.0+ * License URI: http://www.gnu.org/licenses/gpl-2.0.txt */ |
以下字段是绝对必需的,并且对于您的插件应该是唯一的:
- 插件名称
- 插件 URI
- 描述
- 版本
- 作者
- 作者 URI
- 文本域
- 贡献者
Step-2 添加子菜单部分
1 2 3 4 |
function crunchify_add_menu ( ) { add_submenu_page ( "options-general.php" , "Crunchify Plugin" , "Crunchify Plugin" , "manage_options" , "crunchify-hello-world" , "crunchify_hello_world_page" ) ; } add_action ( "admin_menu" , "crunchify_add_menu" ) ; |
我们正在使用add_action
WordPress 挂钩为我们的插件添加子菜单。
Step-3 创建插件设置页面
在我们的例子Settings -> Crunchify Plugin
。

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
function crunchify_hello_world_page ( ) { ? > < div class = "wrap" > < h1 > Hello World Plugin Template By < a href = "https://crunchify.com/optimized-sharing-premium/" target = "_blank" > Crunchify < / a > < / h1 > < form method = "post" action = "options.php" > <?php settings_fields ( "crunchify_hello_world_config" ) ; do_settings_sections ( "crunchify-hello-world" ) ; submit_button ( ) ; ?> < / form > < / div > <?php } function crunchify_hello_world_settings ( ) { add_settings_section ( "crunchify_hello_world_config" , "" , null , "crunchify-hello-world" ) ; add_settings_field ( "crunchify-hello-world-text" , "This is sample Textbox" , "crunchify_hello_world_options" , "crunchify-hello-world" , "crunchify_hello_world_config" ) ; register_setting ( "crunchify_hello_world_config" , "crunchify-hello-world-text" ) ; } add_action ( "admin_init" , "crunchify_hello_world_settings" ) ; function crunchify_hello_world_options ( ) { ?> < div class = "postbox" style = "width: 65%; padding: 30px;" > < input type = "text" name = "crunchify-hello-world-text" value = " <?php echo stripslashes_deep ( esc_attr ( get_option ( 'crunchify-hello-world-text' ) ) ) ; ?> " / > Provide any text value here for testing < br / > < / div > < ? php } |

步骤 4 将保存的文本字段值附加到每个帖子
1 2 3 4 |
add_filter ( 'the_content' , 'crunchify_com_content' ) ; function crunchify_com_content ( $ content ) { return $ content . stripslashes_deep ( esc_attr ( get_option ( 'crunchify-hello-world-text' ) ) ) ; } |

完整代码:
这是一个完整的Hello World WordPress Plugin
代码。 只需将其复制到下面并保存到文件crunchify-hello-world.php
文件中。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
<?php /** * Crunchify Hello World Plugin is the simplest WordPress plugin for beginner. * Take this as a base plugin and modify as per your need. * * @package Crunchify Hello World Plugin * @author Crunchify * @license GPL-2.0+ * @link https://crunchify.com/tag/wordpress-beginner/ * @copyright 2017 Crunchify, LLC. All rights reserved. * * @wordpress-plugin * Plugin Name: Crunchify Hello World Plugin * Plugin URI: https://crunchify.com/tag/wordpress-beginner/ * Description: Crunchify Hello World Plugin is the simplest WordPress plugin for beginner. Take this as a base plugin and modify as per your need. * Version: 3.0 * Author: Crunchify * Author URI: https://crunchify.com/ * Text Domain: crunchify-hello-world * Contributors: Crunchify * License: GPL-2.0+ * License URI: http://www.gnu.org/licenses/gpl-2.0.txt */ /** * Adding Submenu under Settings Tab * * @since 1.0 */ function crunchify_add_menu ( ) { add_submenu_page ( "options-general.php" , "Crunchify Plugin" , "Crunchify Plugin" , "manage_options" , "crunchify-hello-world" , "crunchify_hello_world_page" ) ; } add_action ( "admin_menu" , "crunchify_add_menu" ) ; /** * Setting Page Options * - add setting page * - save setting page * * @since 1.0 */ function crunchify_hello_world_page ( ) { ?> < div class = "wrap" > < h1 > Hello World Plugin Template By < a href = "https://crunchify.com/optimized-sharing-premium/" target = "_blank" > Crunchify < / a > < / h1 > < form method = "post" action = "options.php" > <?php settings_fields ( "crunchify_hello_world_config" ) ; do_settings_sections ( "crunchify-hello-world" ) ; submit_button ( ) ; ?> < / form > < / div > <?php } /** * Init setting section, Init setting field and register settings page * * @since 1.0 */ function crunchify_hello_world_settings ( ) { add_settings_section ( "crunchify_hello_world_config" , "" , null , "crunchify-hello-world" ) ; add_settings_field ( "crunchify-hello-world-text" , "This is sample Textbox" , "crunchify_hello_world_options" , "crunchify-hello-world" , "crunchify_hello_world_config" ) ; register_setting ( "crunchify_hello_world_config" , "crunchify-hello-world-text" ) ; } add_action ( "admin_init" , "crunchify_hello_world_settings" ) ; /** * Add simple textfield value to setting page * * @since 1.0 */ function crunchify_hello_world_options ( ) { ?> < div class = "postbox" style = "width: 65%; padding: 30px;" > < input type = "text" name = "crunchify-hello-world-text" value = " <?php echo stripslashes_deep ( esc_attr ( get_option ( 'crunchify-hello-world-text' ) ) ) ; ?> " / > Provide any text value here for testing < br / > < / div > <?php } /** * Append saved textfield value to each post * * @since 1.0 */ add_filter ( 'the_content' , 'crunchify_com_content' ) ; function crunchify_com_content ( $content ) { return $content . stripslashes_deep ( esc_attr ( get_option ( 'crunchify-hello-world-text' ) ) ) ; } |
Step-5 创建 readme.txt 文件
这是一个示例 WordPress 插件readme.txt
文件。

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
=== Crunchify Hello World Plugin === Contributors : Crunchify Donate link : https : //www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=8ZF6WATLYFELQ Tags : Hello World Plugin , Crunchify Plugins , Beginner WordPress , WordPress Plugin Requires at least : 4.5 Tested up to : 4.7.4 Stable tag : 3.0 License : GPLv2 or later License URI : http : //www.gnu.org/licenses/gpl-2.0.html Create your fist plugin . Crunchify Hello World Plugin is the simplest WordPress plugin for beginner . Take this as a base plugin and modify as per your need . == Description == Crunchify Hello World Plugin is the simplest WordPress plugin for beginner if you want to start creating fresh new plugin . Take this as a base plugin and modify as per your need . == Installation == 1. Unpack the ` download - package ` . 2. Upload the file to the ` / wp - content / plugins / ` directory . 3. Activate the plugin through the ` Plugins ` menu in WordPress . 4. Done and Ready . == Frequently Asked Questions == = How to add FAQ question = * just add your FAQ questions here == Screenshots == 1. This is a text label for your first screenshot 2. Add more screenshot labels as new line == Changelog == = 3.0 = * Initial release |
怎么办?
- 只需在
/plugins folder
下创建文件夹crunchify-hello-world
并在其中添加两个文件。

- 转到管理控制台 -> 插件
- 激活插件

而已。
开始编写您的第一个 WordPress 插件
将此代码as a sample
,并根据您的需要进行修改。 在下一个教程中,我们将介绍一些更复杂的数组字段以获得更多功能。
请继续关注和快乐的博客。