Claude Code 开发 WordPress 插件完整教程科技感封面图

Claude Code 开发 WordPress 插件完整教程

本文讲清如何用 Claude Code 开发 WordPress 插件:从需求拆解、插件骨架、主插件文件、Hooks、设置页、短代码、资源加载、安全处理,到本地测试、打包发布和提示词模板。适合想用 AI 辅助完成 WordPress 插件开发的新手和站长。

用 Claude Code 开发 WordPress 插件,最适合的方式不是直接说“帮我写一个插件”,而是把插件开发拆成需求、骨架、核心功能、安全处理、测试和打包几个阶段。Claude Code 可以帮你生成文件、理解 WordPress Hooks、补设置页、写短代码、检查安全问题,但每一步都需要开发者确认范围和代码质量。

本文会从零讲清 Claude Code 开发 WordPress 插件的完整流程。还没配置 Claude Code 或本地 WordPress 环境的读者,可以先看本站 安装部署教程环境配置教程;想把插件开发流程沉淀成日常 AI 编程 SOP,可以继续阅读 实战工作流

摘要

使用 Claude Code 开发 WordPress 插件,推荐流程是:先把插件需求写成明确规格,说明功能边界、后台菜单、前台输出、用户权限、数据存储方式和不做什么;再让 Claude Code 生成插件骨架,包括主插件文件、插件头注释、includes、assets、templates 等目录;接着围绕 WordPress action、filter、activation hook、settings API、shortcode 或 block 功能逐步实现;每个阶段都要求 Claude Code 先给计划,再修改文件;代码完成后检查 nonce、capability、sanitize、escape、ABSPATH、卸载清理和资源加载;最后在本地 WordPress 环境激活插件、测试后台设置、前台输出、禁用卸载和 zip 打包。插件开发可以由 AI 加速,但安全、兼容和发布前审查必须人工完成。

正文

先明确插件需求

WordPress 插件开发最怕需求不清。你需要先告诉 Claude Code 这个插件解决什么问题、面向谁、后台是否需要设置页、前台如何输出、是否需要短代码、是否写入数据库、是否要加载 JS/CSS、哪些功能暂时不做。

我要开发一个 WordPress 插件。
功能:在文章末尾自动显示一个自定义 CTA 区块。
后台:需要设置 CTA 标题、按钮文字、按钮链接。
前台:只在单篇文章页显示。
权限:只有 manage_options 用户可以修改设置。
限制:不要创建自定义数据表,不要引入前端构建工具,先做轻量版本。

需求越具体,Claude Code 生成的插件结构越稳定。

第一步:让 Claude Code 生成插件骨架

WordPress 官方插件手册说明,最简单的插件是一个带有插件头注释的 PHP 文件。实际开发中,建议从一开始就建立清晰目录,避免所有代码堆在一个文件里。

Claude Code WordPress 插件骨架流程图
开发插件前先让 Claude Code 生成清晰骨架,包括主文件、目录结构、加载入口和生命周期钩子。
请为这个插件生成基础骨架,但先给计划,等我确认后再写文件。
目录建议:
- my-cta-plugin.php 主插件文件
- includes/class-admin.php 后台设置
- includes/class-frontend.php 前台输出
- assets/css/frontend.css 前台样式
- uninstall.php 卸载清理
要求:包含插件头、ABSPATH 防直接访问、基础类加载。

第二步:确认主插件文件

主插件文件通常包含插件头、常量定义、文件加载和启动入口。不要让 Claude Code 一开始把所有逻辑写进主文件。主文件应该只负责“加载”和“启动”。

<?php
/**
 * Plugin Name: My CTA Plugin
 * Description: Adds a custom CTA block after single post content.
 * Version: 1.0.0
 * Author: Your Name
 */

if (!defined('ABSPATH')) {
    exit;
}

实际代码可以由 Claude Code 生成,但你要检查插件头是否完整、命名是否唯一、常量是否带前缀,避免和其他插件冲突。

第三步:用 Hooks 接入 WordPress

WordPress 插件开发离不开 hooks。官方文档把 hooks 分为 actions 和 filters:action 用于在特定阶段执行逻辑,filter 用于修改某个值。常见场景包括 admin_menu 添加后台菜单、admin_init 注册设置、wp_enqueue_scripts 加载资源、the_content 修改文章内容。

Claude Code WordPress 插件 Hooks 与设置页流程图
WordPress 插件开发的核心是用正确的 action、filter 和设置 API 连接后台与前台功能。
请实现前台输出逻辑:
1. 使用 the_content filter
2. 只在 is_singular('post') 且主查询中追加 CTA
3. CTA 内容来自 options
4. 输出前做好 esc_html、esc_url
5. 不影响后台和归档页

第四步:实现后台设置页

如果插件需要后台配置,必须处理权限、nonce、数据清洗和输出转义。让 Claude Code 写设置页时,要明确使用 manage_options 权限,保存前 sanitize,输出时 escape。

请实现后台设置页:
- 菜单放在 Settings 下
- 权限使用 manage_options
- 字段:标题、按钮文字、按钮链接
- 保存时 sanitize_text_field 和 esc_url_raw
- 输出时 esc_html 和 esc_url
- 使用 WordPress Settings API

不要让设置页直接信任 $_POST,也不要把未清洗的数据直接输出到前台。

第五步:添加激活、停用和卸载逻辑

WordPress 官方文档提供 register_activation_hook、register_deactivation_hook 和 uninstall 机制。激活时适合设置默认选项、刷新重写规则;停用时一般不要删除用户数据;卸载时才清理插件创建的选项或数据。

请添加插件生命周期逻辑:
1. activation 时写入默认 option
2. deactivation 不删除用户设置
3. uninstall.php 中删除本插件 option
4. 不要删除其他插件或主题数据

第六步:实现短代码或区块

如果插件需要用户手动插入内容,可以先从 shortcode 做起。短代码简单、兼容性好,不需要复杂构建流程。等功能稳定后,再考虑区块编辑器 Block。

请新增 shortcode [my_cta]:
- 支持 title、button_text、url 参数
- 默认值来自插件设置
- 输出 HTML 前做好转义
- 不加载多余脚本
- 给出使用示例

第七步:加载 CSS 和 JS

资源加载不要直接在模板里写 link 或 script。前台资源用 wp_enqueue_scripts,后台资源用 admin_enqueue_scripts,并尽量只在需要的页面加载。

请添加前台 CSS 加载:
1. 使用 wp_enqueue_scripts
2. 只在单篇文章页或 shortcode 存在时加载
3. 使用 plugins_url 定位 assets/css/frontend.css
4. 设置版本号,便于缓存刷新

第八步:做安全检查

插件开发一定要检查安全细节。重点包括:防止直接访问 PHP 文件、后台操作校验 capability、表单使用 nonce、保存数据 sanitize、输出数据 escape、数据库查询使用 prepare、AJAX 请求校验权限。

Claude Code WordPress 插件测试与打包清单图
插件完成后要检查安全、兼容、激活卸载、前后台功能和 zip 打包结构。
请审查插件安全性:
1. 是否所有 PHP 文件都有 ABSPATH 检查
2. 后台保存是否校验 nonce 和 capability
3. 输入是否 sanitize
4. 输出是否 escape
5. URL 是否使用 esc_url
6. 是否存在未授权 AJAX 或 REST 操作
7. 是否误删用户数据

第九步:本地测试插件

把插件复制到 wp-content/plugins 目录后,在后台启用。测试时至少覆盖:插件能否激活、设置页是否保存成功、前台是否按条件显示、短代码是否正常、禁用后是否不再输出、卸载是否清理本插件数据。

wp-content/plugins/my-cta-plugin/
  my-cta-plugin.php
  includes/
  assets/
  uninstall.php

如果使用 WP-CLI,可以让 Claude Code 帮你生成测试命令,但执行前仍要确认不会影响线上站点。

第十步:让 Claude Code 生成测试清单

插件开发完成后,不要只看能不能激活。让 Claude Code 输出测试清单:

请为这个 WordPress 插件生成发布前测试清单:
1. 激活和停用
2. 设置页保存
3. 前台显示条件
4. shortcode 输出
5. CSS 加载
6. 权限和 nonce
7. 输入清洗和输出转义
8. 卸载清理
9. 与常见主题兼容
10. zip 打包检查

第十一步:打包插件

打包前检查目录结构,不要把 node_modules、.git、临时日志、测试截图、真实密钥、数据库备份打进 zip。readme.txt、截图、版本号、最低 WordPress/PHP 要求也要确认。

my-cta-plugin.zip
└── my-cta-plugin/
    ├── my-cta-plugin.php
    ├── includes/
    ├── assets/
    ├── uninstall.php
    └── readme.txt

第十二步:完整提示词模板

下面这段可以直接复制给 Claude Code:

请帮我开发一个 WordPress 插件。
当前阶段先给计划,不要立即写文件。

插件需求:
【写清插件功能】

后台设置:
【是否需要菜单、字段、权限】

前台输出:
【自动追加、shortcode、block 或 widget】

限制:
- 不创建自定义数据表,除非我确认
- 不引入前端构建工具
- 不修改主题文件
- 不访问真实密钥
- 所有输入 sanitize,所有输出 escape

请先输出:
1. 插件目录结构
2. 主插件文件职责
3. 使用哪些 action/filter
4. 设置页实现方式
5. 安全检查点
6. 测试和打包计划
等我确认后再生成文件。

开发时不要做的事

不要让 Claude Code 修改主题核心文件,不要在插件里硬编码管理员账号密码,不要直接删除线上文章或选项,不要把密钥写进插件源码,不要跳过 nonce 和 capability 检查。更多安全和排错思路,可以查看本站 问题排查教程

FAQ

Claude Code 能直接生成完整 WordPress 插件吗?

可以生成初版,但不建议一次性完成全部功能。更稳妥的做法是先生成骨架,再逐步实现后台设置、前台输出、安全检查和测试。

插件开发必须会 PHP 吗?

最好具备基础 PHP 和 WordPress Hooks 概念。Claude Code 可以加速开发,但你仍然需要审查权限、安全、数据清洗和输出转义。

短代码和区块应该先做哪个?

新手建议先做 shortcode,结构简单、兼容性好。等功能稳定后,再考虑开发区块编辑器 Block。

Claude Code 写的插件怎么测试?

在本地 WordPress 环境安装启用,测试激活、设置页保存、前台输出、短代码、资源加载、停用和卸载。不要直接在生产站点测试新插件。

插件可以直接上传到线上吗?

不建议。应先在本地或测试站验证,通过安全检查和兼容性测试后,再打包上传线上。上线前务必备份站点。

安装部署教程

环境配置与 Docker 工作流

适合阅读安装部署、本地配置、服务器搭建和自动化流程类文章后继续转化。

环境配置资料包 包含 Windows / Mac / Linux 常见环境配置、依赖安装和报错排查清单。 查看资料包 Docker 工作流包 整理 Docker 部署模板、compose 示例和常用服务编排流程。 查看资料包
AI Stack Nav 客服会员 / 支付 / 下载 / 工具库
你好,我是 AI Stack Nav 客服助手。你可以问我会员开通、微信支付、资料下载、订单入口、AI 工具库等问题。