Site-wide SEO Inventory, Google Search Console, Trends, and SERP Positions in wp-admin. Audit titles, meta descriptions, and completeness; mark P1–P3 business priority; sync Search Analytics; inspect URLs; track ranks via Serper. Optional AI Assistant generates SEO title, meta description, and focus keyphrases through the standard WordPress AI Client / Connectors — not a custom vendor SDK.
A plugin by 4WP · Directory listing: readme.txt (canonical for WordPress.org)
Developer notes: docs/DEVELOPMENT.md
- Fix (Yoast SEO): written SEO meta show on the page in staging / development too (Yoast saves indexables only in production; the rebuild now saves that post's indexable).
forwp-seo-helper/get-content— page body for AI agents (text / HTML / blocks, limits in Settings → AI agents (Abilities)), with a notice that the public page may differ (template, header/footer, plugin output).- Fix: Yoast indexable refreshed after SEO meta writes (no duplicate rows); child pages found by slug.
- Abilities API (WordPress 6.9+) —
forwp-seo-helper/list-missing-meta,get-meta,update-meta,search: audit and edit SEO meta from AI agents (Claude via 4WP MCP Connector + MCP Adapter). Writes go through the active SEO plugin adapter. See docs/ABILITIES.md.
- Cross posting — Settings toggle + default delay after the original is published; Platforms taxonomy (Dev.to, daily.dev, Hashnode, Medium, X, …).
- Editor sidebar — per-platform status, manual send, Telegram notify for the share list (4WP Drive
meta.jsonpackages). - Schedule — WP-Cron on publish; optional per-package republish delay from
meta.json. - Publication log — REST + Chrome extension store live URL/slug on the post; Cross posting board in wp-admin.
- 4WP Drive — TechArticle Steps wrap can span contiguous Step H2 sections (
span: multi).
- 4WP Drive — TechArticle wraps for document import: Goal, Context, Steps, Common mistakes. Activate this plugin so Drive Patterns can list the wraps. 4WP Drive on WordPress.org.
- Focus Keywords — submenu of unique Inventory keyphrases, usage (page/post/archive), SERP position from Positions when the URL was recorded for that query, and keyword P1–P3 lanes.
- Positions: query + country rank checks via Serper. Search Console property is the domain we look for. Dated organic snapshots, SERP title hover, Ask / Suggest (People also ask + related searches) with source query IDs.
- Trends submenu: Google Trends JSON, related-queries CSV, or time-series CSV (daily → monthly averages). Key = query + region. Snapshots by date, Δ. Inventory Trends column uses the latest snapshot.
- Configurable Dashboard (Screen Options layout, drag/hide widgets) with 7 / 28 / 90 day Search Console ranges
- AI Assistant submenu and inventory Generate panel, powered by Settings → Connectors (
wp_ai_client_prompt/wp_supports_ai) - Dynamics list shows what changed (search clicks/impressions, content, score)
- Inventory CSV export on the tabs row; quieter inventory header
- 4WP Drive — TechArticle Goal / Context / Steps / Common mistakes on import (4WP Drive)
- Cross posting — platforms, publish delay, editor send + Telegram, publication log for Drive packages
- Trends — Google Trends JSON, related-queries CSV, or time-series CSV (query + region snapshots)
- Positions — Serper SERP checks vs Search Console property; snapshots; People also ask / related searches
- SEO Inventory — filters, missing fields, CSV export, two-column Quick Edit
- Priority queue — P1 / P2 / P3 lanes (business priority, not SEO score)
- Yoast SEO and All in One SEO adapters
- Google Search Console — OAuth, overview, insights, performance, URL inspection, local sync
- Indexing — refresh status and request indexing from inventory or the admin bar
- Dynamics — per-URL history of index requests, crawls, content, SEO fields, and search metrics
- AI Assistant — WordPress AI Client connectors; generate title / description / keyphrases from page content (or URL)
- REST API — Sheets or custom dashboards
- Abilities (MCP) — list / get / update / search SEO meta for AI agents (WordPress 6.9+)
- Multilingual — Polylang, WPML, or single-language
Generation uses the WordPress AI Client. Configure a text-generation connector under Settings → Connectors. Until a connector is available, the inventory AI panel stays off and 4WP SEO → AI Assistant explains how to enable it.
- Install/enable WordPress AI Client (and a connector) so
wp_supports_ai()is true. - Open Settings → Connectors and complete the connector for text generation.
- In SEO Inventory, Quick Edit a row and Generate with AI. Default context is page content (plain text from WordPress, not a live crawl). Page URL is the lighter-token option.
- Review SEO title, meta description, and focus keyphrases, then Update. Nothing is saved until you apply.
The plugin does not ship API keys or talk to a model until the site administrator has configured a connector.
| Screen | Slug |
|---|---|
| Dashboard | forwp-seo |
| SEO Inventory | forwp-seo-inventory |
| Dynamics | forwp-seo-dynamics |
| GSC | forwp-seo-gsc |
| Trends | forwp-seo-trends |
| Positions | forwp-seo-positions |
| Cross posting | forwp-seo-crosspost |
| Platforms | edit-tags.php?taxonomy=forwp_platform |
| AI Assistant | forwp-seo-ai |
| Settings | forwp-seo-settings |
- WordPress 6.0+
- PHP 8.0+
- Yoast SEO or All in One SEO (recommended for inventory read/write)
- Optional: Google Cloud OAuth + Search Console API
- Optional: Serper API key for Positions
- Optional: WordPress AI Client + a connector under Settings → Connectors
- Optional: WordPress 6.9+ (Abilities API) + MCP Adapter + 4WP MCP Connector for AI agents
GPL v2 or later. See 4wp-seo-helper.php.