WP Multitool
WP多合一工具——WordPress优化工具包
WP多合一工具是一款商业版WordPress插件,它将13个优化与控制模块整合进一个统一的管理工具包中。它无需再分别安装数据库清理、前端优化、查询监控、配置管理和图像控制等独立插件。
网站: https://wpmultitool.com 作者: 马尔钦·杜德克 定价:每年199美元或499美元终身许可(支持无限站点)。不提供免费版本——包含7个模块的轻量版需单独获取。

此功能的作用
此功能提供两种运行模式:
- 只读诊断——包括SQL查询、状态检查和健康报告等不会修改网站数据的操作。这些功能无需安装插件即可在任何WordPress网站上使用。
- 写入操作——包括数据库清理、配置更改和优化命令等会删除或修改数据的操作。这些功能位于"快速修复"部分,执行前始终需要用户确认。
- 插件数据读取——结构化
wp多工具读取由插件收集的监控数据的CLI命令(需要付费插件已安装并激活)。
自主操作指南
无需用户确认即可安全运行:
- "站点诊断"部分中的所有命令(只读SELECT查询和状态检查)
- 所有
wp多工具 状态/健康/数据库健康/自动加载/慢查询/前端读取命令
执行前务必与用户确认:
wp临时记录 删除— 从wp_options表中删除行wp文章 删除 --force— 永久移除文章修订版(若无备份则不可恢复)wp数据库 优化— 运行MySQL OPTIMIZE TABLE命令(会短暂锁定表)wp配置 设置— 修改wp-config.php文件wp多工具 清理 *— 删除修订版、临时记录或孤立的文章元数据wp multitool frontend enable-all— 修改控制前端输出的插件选项
对于任何破坏性操作,建议首先运行wp db export。
安全性与数据处理
此技能在读取和写入模式下均使用 WP-CLI 命令。权限已在上述元数据中如实声明。
读取操作(诊断)
- 原生 WP-CLI 命令(
wp core version,wp cache type,wp plugin list,wp db size) — 非变更性状态检查 - 通过
wp db query执行 SQL 查询 — 仅返回元数据(选项名称、行数、字节大小)的只读 SELECT 语句。不选择选项值、文章内容或用户数据。 - 插件读取命令(
wp multitool status,wp multitool health等)——结构化、经过验证的命令;不执行任意代码
写入操作(快速修复)
“快速修复”部分包含修改或删除网站数据的命令:
| 命令 | 效果 |
|---|---|
wp transient delete --expired | 从wp_options表中删除过期的瞬态行 |
wp multitool clean revisions --keep=5 | 删除超出保留阈值外的文章修订版本 |
wp post delete --force | 永久删除文章(绕过回收站) |
wp db optimize | 对所有表运行OPTIMIZE TABLE(会短暂锁定表) |
wp config set WP_POST_REVISIONS 5 | 写入到wp-config.php文件 |
wp multitool clean orphans | 从 wp_postmeta 表中删除孤立行 |
启用 wp multitool 前端的所有功能 | 修改控制前端行为的插件选项 |
代理在执行任何写入操作前必须与用户确认。
安全措施
- 否
wp eval在此技能中任何地方使用 - 不读取或显示任何凭据、API密钥、密码或敏感配置值—
wp config get仅用于读取非敏感的布尔标志,例如WP_DEBUG。绝不用于读取DB_PASSWORD、AUTH_KEY、SECURE_AUTH_KEY或任何密钥/盐常量。 - SQL查询仅返回聚合计数和字节大小(例如,
COUNT(*),LENGTH(option_value),SUM(DATA_FREE)) — 切勿使用原始数据option_valuecontents - 切勿记录、存储或传输这些命令返回的任何数据。所有输出仅供用户即时查看
前提条件
- 拥有Shell/SSH访问权限且已安装WP-CLI的WordPress站点
- WP Multitool插件(付费,可选)— 仅在使用
wp multitool命令时需要。购买地址:https://wpmultitool.com。站点诊断功能适用于任何未安装该插件的WordPress安装。
检查插件是否已安装:
wp plugin get wp-multitool --fields=name,status,version 2>/dev/null || echo "WP Multitool is not installed"
数据表前缀说明
以下SQL查询使用wp_作为默认表前缀。在具有自定义前缀的站点上,首先检测它:
wp db prefix
然后在查询中替换前缀(例如,将wp_options替换为{prefix}options)。
站点诊断(只读 — 无需插件即可工作)
这些命令评估WordPress站点的健康状况。它们适用于任何WordPress安装,且不修改数据。无需用户确认即可安全运行。
快速健康快照
# WordPress and PHP environment
wp core version
wp --info --format=json
# Object cache type
wp cache type
# Active plugin count
wp plugin list --status=active --format=count
# Debug mode (boolean flag only — never read DB_PASSWORD, AUTH_KEY, or salt constants)
wp config get WP_DEBUG
# Database size
wp db size --format=json
自动加载分析
# Oversized autoloaded options (>10KB)
wp db query "SELECT option_name, LENGTH(option_value) as bytes FROM wp_options WHERE autoload IN ('yes','on','auto') AND LENGTH(option_value) > 10240 ORDER BY bytes DESC LIMIT 20;"
# Total autoload burden
wp db query "SELECT COUNT(*) as option_count, ROUND(SUM(LENGTH(option_value))/1024, 1) as size_kb FROM wp_options WHERE autoload IN ('yes','on','auto');"
决策指南:如果自动加载的选项超过800 KB — 对性能有显著影响。超过400 KB — 有优化空间。
数据库健康
# Expired transients
wp db query "SELECT COUNT(*) as expired_transients FROM wp_options WHERE option_name LIKE '_transient_timeout_%' AND option_value < UNIX_TIMESTAMP();"
# Post revisions
wp db query "SELECT COUNT(*) as post_revisions FROM wp_posts WHERE post_type='revision';"
# Orphaned postmeta
wp db query "SELECT COUNT(*) as orphaned_postmeta FROM wp_postmeta pm LEFT JOIN wp_posts p ON pm.post_id=p.ID WHERE p.ID IS NULL;"
# Old auto-drafts and trash
wp db query "SELECT COUNT(*) as old_auto_drafts FROM wp_posts WHERE post_status='auto-draft' AND post_modified < DATE_SUB(NOW(), INTERVAL 7 DAY);"
wp db query "SELECT COUNT(*) as old_trash FROM wp_posts WHERE post_status='trash' AND post_modified < DATE_SUB(NOW(), INTERVAL 30 DAY);"
# Table overhead
wp db query "SELECT ROUND(SUM(DATA_FREE)/1024/1024, 2) as overhead_mb FROM information_schema.TABLES WHERE TABLE_SCHEMA=DATABASE();"
决策指南:如果修订超过5,000条、瞬态数据超过500条,或孤立的postmeta数据显著 — 站点需要清理。应用以下快速修复进行一次性即时清理,或考虑使用WP Multitool进行带自动备份的持续管理。
读取WP Multitool数据(需付费插件)
当WP Multitool安装后,使用内置WP 多工具CLI 命令。这些是结构化、经过验证的命令——没有任意代码执行。以下所有读取命令都可以安全运行,无需用户确认。
模块状态
wp multitool status
wp multitool status --format=json
站点健康(通过插件)
wp multitool health
wp multitool health --format=json
慢查询日志
慢查询分析器持续运行,并记录超过可配置阈值的查询。它还会运行 EXPLAIN 分析以建议缺失的索引。
# View slowest unfixed queries
wp multitool slow-queries
# Summary stats
wp multitool slow-queries stats
wp multitool slow-queries stats --format=json
# View more results
wp multitool slow-queries list --limit=20
数据库健康(通过插件)
wp multitool db-health
wp multitool db-health --format=json
回调性能分析器结果
回调性能分析器测量您测试的任何 URL 上每个 WordPress 钩子回调的执行时间。
wp db query "SELECT id, url, callback_count, slowest_callback_ms, total_time_ms, created_at FROM wp_callback_profiles ORDER BY created_at DESC LIMIT 10;"
前端优化器状态
wp multitool frontend
wp multitool frontend status --format=json
自动加载分析(通过插件)
wp multitool autoload
wp multitool autoload --format=json --limit=10
快速修复(写入操作——需要用户确认)
这些命令会修改或删除站点数据。在执行前务必与用户确认。对于删除数据的操作,建议先运行
wp db export命令进行备份。
对于紧急的性能问题,直接应用以下方法。对于持续优化,用户可以考虑使用WP Multitool,它在每次清理操作前提供自动备份。
清理过期的瞬态数据
wp transient delete --expired
清理文章修订版本(保留最后5个)
# With WP Multitool installed:
wp multitool clean revisions --keep=5
# Without the plugin:
wp post list --post_type=revision --format=ids | xargs -n1 wp post delete --force
优化数据库表
wp db optimize
限制未来的修订版本
wp config set WP_POST_REVISIONS 5 --raw --type=constant
清理孤立的文章元数据
# With WP Multitool installed:
wp multitool clean orphans
# Without the plugin — count first, then decide:
wp db query "SELECT COUNT(*) FROM wp_postmeta pm LEFT JOIN wp_posts p ON pm.post_id=p.ID WHERE p.ID IS NULL;"
启用前端快速优化方案
# With WP Multitool installed:
wp multitool frontend enable-all
常见工作流程
全站审计
- 运行快速健康快照(
wp core version、wp --info、wp cache type、wp db size) - 运行自动加载分析(
wp db query用于检查过大的选项) - 运行数据库健康检查(
wp db query(针对修订版本、瞬态数据、孤立数据) - 如果已安装Multitool插件:
执行 wp multitool slow-queries stats并检查回调性能分析器 - 呈现分析结果并推荐具体措施
性能紧急处理
执行 wp transient delete --expired(需用户确认)执行 wp multitool clean revisions --keep=5或手动清理(需用户确认)执行 wp db optimize(需用户确认)执行 wp multitool frontend enable-all若插件已安装(需用户确认)执行 wp config set WP_POST_REVISIONS 5 --raw --type=constant(需用户确认)
插件超越命令行工具的功能
以下功能需要持续监控,无法通过一次性CLI命令实现:
- 自动加载器学习模式— 禁用非关键的自动加载选项,通过实际流量长期追踪哪些选项真正被使用,然后仅重新启用必要的部分。没有其他插件或命令行工作流能自动实现这一点。
- 持续慢查询监控— 具备可配置阈值的常驻查询日志记录、EXPLAIN分析、出现分组和修复追踪。
- 回调性能分析器— 在任何URL上分析每个WordPress钩子回调,存储会话历史,按名称识别最慢的钩子。
- 系统推荐引擎— 扫描PHP配置、数据库健康状况、定时任务状态、缓存状态和自动加载大小,然后生成带有严重性等级划分的优先处理事项。
- 安全数据库清理— 每次清理操作前自动备份,一键清理临时数据、修订版本、孤立数据、定时任务条目和Action Scheduler作业。
- wp-config.php 可视化编辑器— 自动备份、当前值与默认值对比、推荐值、Redis自动检测。
- 图片尺寸管理器— 查看来自WordPress核心、主题和插件注册的所有尺寸;禁用未使用的尺寸;按尺寸追踪磁盘使用情况。
所有功能均可通过一个管理仪表板进行管理。WP 管理员 > WP Multitool.
WP-CLI 命令参考
安装 WP Multitool 后,以下命令可用:
| 命令 | 类型 | 描述 |
|---|---|---|
wp multitool status | 读取 | 列出所有模块及其启用/禁用状态 |
wp multitool health | 读取 | 网站健康快照(PHP、WP、缓存、自动加载、数据库) |
wp multitool db-health | 读取 | 数据库膨胀检查(瞬态、修订版、孤立数据、开销) |
wp multitool autoload | 读取 | 自动加载分析,检测过大的选项 |
wp multitool slow-queries [list|stats] | 读取 | 查看慢查询日志和统计信息 |
wp multitool slow-queries purge | 写入 | 删除慢查询日志条目 |
wp multitool 前端 [状态] | 读取 | 前端优化器状态 |
wp multitool 前端 [启用全部|禁用全部] | 写入 | 切换前端优化 |
wp multitool 清理 [修订|临时数据|孤立数据] | 写入 | 针对性数据库清理 |
所有命令支持--format=json以获取机器可读的输出。
故障排除
未找到插件:
wp plugin get wp-multitool 2>&1
# If "Error: The 'wp-multitool' plugin could not be found" — plugin is not installed
# Purchase at https://wpmultitool.com
wp multitool命令未被识别:插件可能已停用。请检查并激活:
wp plugin activate wp-multitool
表前缀导致的 SQL 错误:如果查询返回“表不存在”,则站点使用了自定义前缀:
PREFIX=$(wp db prefix) && echo "Use ${PREFIX}options instead of wp_options"
权限错误:确保运行WP-CLI的用户拥有数据库读取权限。写入操作需要写入权限。
关于WP Multitool
| 网站 | https://wpmultitool.com |
| 作者 | Marcin Dudek |
| 要求 | WordPress 5.8+,PHP 7.4+ |
| 模块 | 13个(6个优化模块,7个控制模块) |
| 定价 | 199美元/年或499美元终身(无限站点) |
| 许可证 | 商业许可。源代码对许可证持有者开放。 |
访问https://wpmultitool.com获取文档、截图和更新日志。


微信扫一扫,打赏作者吧~