Description
Pinnacles SEO Connector is the WordPress-side companion for the Pinnacles SEO platform (pinnacles.ai), a subscription service that audits your site, plans a keyword strategy, and applies on-page SEO fixes for you.
Once installed and connected, the plugin lets the Pinnacles platform read and write your on-page SEO data through a dedicated, capability-gated REST API namespace (pinnacles/v1) rather than touching the database directly. It is compatible with Yoast SEO, Rank Math, and All in One SEO — it writes to whichever of those is active — and falls back to its own output when none is installed.
A Pinnacles account is required. This plugin performs no SEO work on its own; it is the connector that lets the Pinnacles service act on your site. See the External services section below for exactly what data is exchanged.
What it does
- Registers SEO title, meta-description, canonical, and robots meta fields for REST access across Yoast, Rank Math, and All in One SEO.
- Writes SEO title/description for taxonomy-term archive pages (e.g. category or custom-taxonomy archives) across the same three SEO plugins.
- Injects JSON-LD structured data (Article, LocalBusiness, FAQPage, etc.), integrating with your active SEO plugin’s schema graph so nothing is duplicated.
- Manages custom
robots.txtrules. - Excludes selected URLs from the XML sitemap (core sitemaps plus Yoast / Rank Math / All in One SEO).
- Adds
preconnectresource hints for third-party origins. - Creates and updates pages and navigation-menu items as part of the Pinnacles content strategy.
- Exposes a read-only status endpoint used for connection diagnostics.
Security
Every REST endpoint requires a dedicated pinnacles_manage_seo capability, granted only to an Editor-or-above user you designate, and each endpoint additionally enforces the matching WordPress object-level permission: post endpoints require edit_post/read_post on the target, taxonomy-term endpoints require edit_term, and navigation-menu endpoints require edit_theme_options. The diagnostics endpoint is authenticated (no anonymous access). Structured-data and robots.txt inputs are validated against injection and size limits.
External services
This plugin connects your site to the Pinnacles SEO platform operated by Pinnacles AI (https://pinnacles.ai), which is required for the plugin to function.
After you add your site from the Pinnacles dashboard, Pinnacles’ servers authenticate to your site using a WordPress Application Password that you create, and call this plugin’s pinnacles/v1 REST endpoints to read and write:
- SEO metadata (titles, meta descriptions, canonicals, robots directives);
- page and post content that Pinnacles creates or refreshes for you;
- navigation-menu items,
robots.txtrules, JSON-LD schema, and sitemap exclusions; - environment diagnostics (plugin version, active SEO plugin, WordPress/PHP versions) used to set up and health-check the connection.
The content and SEO settings you manage through Pinnacles are therefore transmitted to and stored by Pinnacles. The plugin itself does not initiate outbound connections — it only responds to authenticated requests from the Pinnacles platform.
Your use of the service is governed by:
- Terms of Service: https://pinnacles.ai/terms
- Privacy Policy: https://pinnacles.ai/privacy
Installation
- Install and activate the plugin on the WordPress site you want to manage.
- In your Pinnacles dashboard, add the site and follow the connection steps. You will create a WordPress Application Password and designate an Editor-or-above user to hold the
pinnacles_manage_seocapability. - Once connected, manage your SEO from the Pinnacles dashboard — the plugin applies changes on your site automatically.
Deactivating the plugin removes the pinnacles_manage_seo capability from all users. Deleting the plugin also removes its stored options and schema post-meta.
FAQ
-
Does this plugin work without a Pinnacles account?
-
No. It is a connector for the Pinnacles SEO platform and performs no SEO work on its own. A Pinnacles subscription is required.
-
Do I still need Yoast, Rank Math, or All in One SEO?
-
They are not required. If one is active, the plugin writes SEO fields and schema through it so there is no duplicate output. If none is active, the plugin emits its own SEO meta and JSON-LD.
-
What data leaves my site?
-
Only the SEO metadata, content, and site settings you choose to manage through Pinnacles, plus the connection diagnostics listed in the External services section. See the Privacy Policy for full details.
-
How does Pinnacles authenticate to my site?
-
Through a standard WordPress Application Password that you generate, scoped to a user you designate. All write endpoints additionally require the
pinnacles_manage_seocapability.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Pinnacles SEO Connector” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Pinnacles SEO Connector” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.9.14
- Hardened REST authorization. The diagnostics endpoint (
status) now requires an authenticated Editor-or-above caller instead of being public, so environment/version details are never exposed anonymously. Every content endpoint now enforces the matching WordPress object-level capability in its permission check: post schema and content requireedit_post/read_poston the target, taxonomy-term schema/FAQ/SEO endpoints requireedit_term, and navigation-menu endpoints requireedit_theme_options. Registered SEO meta fields requireedit_poston the target post for REST writes.
1.9.13
- Render Pinnacles schema JSON-LD and FAQ blocks on taxonomy term archive pages. New
schema/termandfaq/termREST endpoints store the payloads in termmeta; the plugin emits stored schema through the active SEO plugin’s graph filter (Yoast / Rank Math / All in One SEO) and appends the visible FAQ HTML via theget_the_archive_descriptionfilter. FAQ storage is a single write; the plugin derives both the visible HTML and the FAQPage JSON-LD from the same qa_pairs. Also tightens the existing postschemaendpoint to reject IDs that don’t resolve to a real post.
1.9.12
- The All in One SEO term-SEO write path now uses
INSERT ... ON DUPLICATE KEY UPDATEinstead of$wpdb->replace(), preserving every other column on an existingaioseo_termsrow (Open Graph, Twitter, canonical, robots, etc.) rather than nulling them.
1.9.11
- Added a
term-seoREST endpoint so title/description fixes can be applied to taxonomy-term archive pages (e.g./designers/amsale/), not just posts and pages. Supports Yoast, Rank Math, and All in One SEO.
1.9.10
- Added
readme.txtfor the WordPress.org Plugin Directory, including the required external-services disclosure. - Debug logging on content/menu write failures is now guarded behind
WP_DEBUGso nothing is written to logs in production.
1.9.9
- Lowered the minimum PHP requirement from 8.0 to 7.4.
1.9.8
- The status endpoint now returns only non-sensitive fields to anonymous callers; WordPress/PHP/security-plugin details are gated behind the management capability.
- Sitemap exclusions are applied through the active SEO plugin’s own filter (Yoast, Rank Math, All in One SEO) in addition to the WordPress core sitemap.
- Preconnect hints are restricted to https origins and capped.
- The activate/deactivate endpoints require the target user to already hold
edit_postsand record changes to a bounded audit log. - JSON-LD schema input is validated against markup breakout and size/depth limits;
robots.txtrules are validated against directive injection. - Object-level capability checks on all content-writing endpoints.
Earlier releases
- SEO metadata sync for Yoast, Rank Math, and All in One SEO.
- JSON-LD schema,
robots.txt, sitemap-exclusion, preconnect-hint, and navigation-menu integration over the REST API.