=== Ubersuggest SEO Tools ===
Contributors: devneilpatel
Tags: seo, site-audit, ubersuggest
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 8.0
Stable tag: 0.8.3
License: GPLv3 or later
License URI: https://www.gnu.org/licenses/gpl-3.0.html

Audit your site, check its Core Web Vitals, and apply suggested fixes for page titles, meta descriptions and headings from your dashboard.

== Description ==

Connect your WordPress site to Ubersuggest and work on your SEO without leaving wp-admin:

* **Site Audit** — on-page SEO score, pages crawled, page status, and Core Web Vitals (site speed), powered by the Ubersuggest crawler.
* **SEO Issues** — the issues found by the audit, with AI-generated fixes for titles, meta descriptions, and H1 headings. Generate a suggestion per page, regenerate or edit it, review it, then apply — to a single page or all of them at once. Works on your front page too when it lists your latest posts.
* Issues the plugin can't fix for you still list every affected page, so you know where to look.

Connect your Ubersuggest account under the plugin's Settings screen (OAuth — no API key to paste). AI fix suggestions use your Ubersuggest credits.

== External services ==

This plugin is a client for Ubersuggest, the SEO service at `app.neilpatel.com`. The audit crawler, the scoring and the AI fix suggestions all run on that service, so an Ubersuggest account is required — without one, the plugin cannot audit your site or propose fixes.

All requests are made from your server through the WordPress HTTP API, never from your visitors' browsers. They happen only inside wp-admin, and only when a logged-in administrator performs an action.

What is sent, and when:

* **Your site's domain** — when you start or refresh a Site Audit, open the audit overview, request Core Web Vitals, or when the plugin creates the Ubersuggest project representing this site. The domain is normalised first (scheme and `www.` removed).
* **The address of a single page, plus your site's language** — when you generate an AI fix suggestion for that page, and while the plugin polls for the result.
* **A fix suggestion you edited** — when you save your own wording over the AI-generated one.
* **OAuth credentials** — when you connect your account, the plugin exchanges an authorisation code for access and refresh tokens (PKCE, S256) and reads your Ubersuggest account details to confirm the connection.

**Your page content is never uploaded.** Every on-page check that needs the body of a post runs locally in PHP on your own server. To audit your site, the Ubersuggest crawler requests your public pages itself, the same way a search engine does.

Connecting the account is an explicit action taken by an administrator on the plugin's Settings screen. Until you connect, the plugin sends nothing to Ubersuggest — every request is refused locally for want of a token.

Ubersuggest Terms of Use: https://neilpatel.com/terms/
Ubersuggest Privacy Policy: https://npdigital.com/privacy-notice/

== Changelog ==

= 0.8.3 =
* First release.
