What Is wp-seo-ops?
wp-seo-ops is a command-line operations toolkit for managing WordPress SEO work from the server, terminal, scripts, and automation pipelines.
It is designed for people who need repeatable SEO operations across WordPress sites without depending on one specific SEO plugin UI.
The Core Problem
WordPress SEO work often becomes fragmented:
- SEO metadata lives in different database keys depending on the active plugin.
- Audits are performed manually or with separate external tools.
- Redirects are managed through plugin dashboards instead of repeatable scripts.
- Content pipelines are tracked outside WordPress.
- Indexing and analytics data require separate API workflows.
wp-seo-ops gives those workflows one operational interface:
seo-ops meta get 123 title --path=/var/www/html
seo-ops meta set 123 description "Updated search description" --path=/var/www/html --dry-run
seo-ops audit full --path=/var/www/html --output=report.md
seo-ops redirect import redirects.csv --path=/var/www/html --dry-run
What It Does
wp-seo-ops currently covers these product areas:
| Area | Purpose |
|---|---|
| Configuration | Store default WordPress path and API settings |
| Inventory | Discover posts, pages, SEO plugin state, and site metadata |
| SEO metadata | Read, list, set, delete, export, import, and bulk update SEO fields |
| Audits | Analyze metadata, links, images, speed, broken links, and duplicate content |
| Redirects | List, add, delete, import, and export redirect rules |
| Content | Generate content drafts and import content pipeline CSVs |
| Analysis | Run keyword and Google Search Console data adapters |
| Instant indexing | Submit URLs through IndexNow-compatible workflows |
Who It Is For
wp-seo-ops is useful for:
- WordPress operators who manage many sites.
- SEO teams that need repeatable batch workflows.
- Agencies migrating metadata between SEO plugins.
- Developers building deployment or content automation around WordPress.
- Site owners who prefer CLI workflows over dashboard-only operations.
Who It Is Not For
wp-seo-ops is not a replacement for:
- An SEO plugin's frontend snippet editor.
- A full rank-tracking platform.
- A crawler at the scale of Screaming Frog or Sitebulb.
- A publishing workflow with human editorial approvals.
Instead, it focuses on operational SEO tasks that should be scriptable, reviewable, and repeatable.
Design Principles
| Principle | Meaning |
|---|---|
| Plugin-agnostic | Commands map to the active SEO plugin automatically where possible. |
| CLI-first | Every workflow should work in a terminal or CI job. |
| Safe by default | Destructive commands support --dry-run; deletes require confirmation. |
| WordPress-native | WordPress operations go through WP-CLI and the existing WordPress database. |
| Automation-ready | Output formats include JSON, CSV, Markdown, and table views where supported. |
Mental Model
Think of wp-seo-ops as an operational layer above WordPress and SEO plugins:
Human / script / CI job
|
v
wp-seo-ops CLI
|
+-- WP-CLI adapter -> WordPress posts, terms, metadata, plugins
+-- SEO adapter -> Yoast, SEOPress, Rank Math, AIOSEO, fallback keys
+-- Python tools -> audits, scoring, reports, external APIs
+-- API adapters -> GSC, SpyFu, PageSpeed, IndexNow
You issue a product-level command such as meta set title; wp-seo-ops translates that into the correct WordPress and plugin-specific operation.