=== SiteProPilot ===
Contributors: yourwporgusername
Tags: seo, ai, content generation, image optimization, website audit
Requires at least: 6.6
Tested up to: 7.0
Requires PHP: 8.0
Stable tag: 1.2.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

AI website growth assistant: audits your site, recommends fixes, generates content and image SEO, applies changes only after you approve.

== Description ==

SiteProPilot is an AI-native website growth assistant for WordPress — not a chatbot, and not another SEO settings page.

It understands your pages, posts, images, menus, and existing SEO setup, then proactively tells you what to fix and generates the content to fix it. Every change follows the same safe workflow: current version → AI recommendation → visual diff → approve → apply (a WordPress revision is always saved first) → rollback if you change your mind. Nothing is ever applied automatically.

**Modules**

* **Website Audit** — scans titles, meta descriptions, headings, thin content, missing schema, and image SEO; produces a prioritized, scored list of recommendations.
* **Homepage & Page Optimizer** — improves SEO, AEO (answer-engine optimization), E-E-A-T signals, headings, FAQ, schema, and calls to action. Enhances your existing copy, never replaces it.
* **Blog Generator** — production-ready posts with FAQ, schema, internal link suggestions, a featured-image prompt, and a social caption. Always saved as a draft.
* **SEO Landing Page Generator** — complete, conversion-focused pages for a topic or keyword, saved as a draft.
* **Image SEO** — finds missing ALT text/titles/captions/descriptions, generic filenames, and oversized files across your Media Library; generates and bulk-applies fixes.
* **Internal Linking** — recommends genuinely relevant links between your existing pages; approve, reject, or bulk apply.
* **FAQ & Schema Generator** — FAQs and schema.org JSON-LD (Organization, Website, WebPage, Service, FAQ, Article, BreadcrumbList).
* **AI Assistant** — describe what you want in plain language; it opens the right workflow pre-filled, instead of just replying with text.
* **Background Queue** — full-site audits and bulk image SEO run a few items at a time via WP-Cron, with pause/resume/cancel, so nothing blocks your browser.
* **Activity Log** — every optimization, published draft, suggestion, and rollback in one place.

= External services =

SiteProPilot connects your site to **SiteProPilot Cloud**, a hosted service operated by SiteProPilot, in order to provide its AI features. The plugin itself never contains AI logic or calls an AI provider directly — every AI request is proxied through this service, which in turn uses a third-party AI provider (Anthropic or OpenAI, depending on configuration) to generate the actual recommendation or content.

Connecting is an explicit, opt-in step: nothing is sent to SiteProPilot Cloud until you complete the Activation Wizard (create an account or log in) from the SiteProPilot admin page.

Data sent to SiteProPilot Cloud depends on the feature you use, and always for the specific site you connected — for example: your site's URL and name; page/post titles, headings, and content excerpts (for audits and optimization); media filenames and existing ALT text (for image SEO); and the business profile you fill in under Settings (business name, description, services, keywords, tone). This data is processed to generate recommendations and is stored by SiteProPilot Cloud to power your account (subscription status, usage limits, and the business profile so you aren't asked the same questions twice).

* SiteProPilot Cloud: [https://bizsenti.com/sitepropilot/](https://bizsenti.com/sitepropilot/) — [Terms & Conditions](https://bizsenti.com/sitepropilot/terms/) / [Privacy Policy](https://bizsenti.com/sitepropilot/privacy/)
* Anthropic (Claude), when configured as the AI provider: [https://www.anthropic.com/legal/privacy](https://www.anthropic.com/legal/privacy)
* OpenAI, when configured as the AI provider: [https://openai.com/policies/privacy-policy](https://openai.com/policies/privacy-policy)

Billing (Pro/Agency plans) is handled entirely by SiteProPilot Cloud via Dodo Payments; checkout happens on Dodo's own hosted page and the plugin never collects or stores payment details.

== Installation ==

1. Upload the plugin to `/wp-content/plugins/sitepropilot`, or install it through the WordPress Plugins screen.
2. Activate the plugin.
3. Open the new **SiteProPilot** menu item and complete the Activation Wizard (create an account or log in) to connect this site.
4. From the Overview screen, run your first Website Audit.

== Frequently Asked Questions ==

= Does this replace Yoast SEO or Rank Math? =

No. SiteProPilot writes its own SEO title/description and detects Yoast or Rank Math if either is active, writing to their fields too, so they stay in sync. It's a growth/content layer on top, not a replacement.

= Will it change my content without asking? =

No. Every recommendation is shown as a diff against your current content and only changes anything after you click Approve/Apply. A WordPress revision is saved first, so you can roll back.

= Does it work without an internet connection to SiteProPilot Cloud? =

No — the AI features require a connection to SiteProPilot Cloud, since the plugin never talks to an AI provider directly (see "External services" above).

= Is there a free plan? =

Yes — 1 website, basic audit, homepage optimization, 2 blog posts/month, 1 SEO landing page/month, and image SEO for up to 10 images/month.

== Screenshots ==

1. Overview — website score and today's recommendations.
2. Optimize — before/after diff for the homepage optimizer.
3. Media — Image SEO scan results.
4. Assistant — conversational entry point that opens the right workflow.

== Changelog ==

= 1.2.0 =
* Website Audit now checks a much wider range of Google's official Search Essentials and helpful-content guidelines: HTTPS, whether the site is accidentally telling search engines not to index it, XML sitemap and robots.txt reachability, favicon, duplicate SEO titles/descriptions across pages, heading structure (H1 count), image ALT text coverage, and E-E-A-T signals (author bios, an About page).
* Added a one-click "Fix Now" for the single most damaging and most common accidental issue this can find: the site's own "Discourage search engines from indexing this site" setting being left on (e.g. from a staging launch).
* Recommendations that require action outside the plugin (like enabling HTTPS with your host) are now clearly labeled as guidance rather than shown with a misleading "Review" button that has nothing to open.

= 1.1.3 =
* Fixed a critical bug where applying an SEO title/meta description recommendation had no visible effect at all on sites without Yoast SEO or Rank Math installed. SiteProPilot was correctly storing the new title/description, but nothing was rendering them into the actual page — the `<title>` tag and meta description now come from SiteProPilot directly when no other SEO plugin is active, so applying a recommendation now genuinely changes what search engines (and the browser tab) see.

= 1.1.2 =
* Fixed the Assistant screen losing its conversation every time you switched to another screen and back, or reloaded the page. History is now kept in your browser and restored automatically; a "New conversation" button lets you start fresh whenever you want.

= 1.1.1 =
* Policy change: the Homepage/Page Optimizer now only ever applies changes that are invisible to visitors — the SEO title tag and meta description. Suggested FAQ content, internal links, and page body rewrites are shown as read-only suggestions for you to add yourself; the plugin no longer writes them into your page content. (A brief prior version auto-inserted these; that's been reverted — if you already applied one, use "Recent changes to this page" to roll it back.)
* The standalone Internal Links tool now shows scan results as suggestions only, the same way — no more bulk-apply.

= 1.1.0 =
* The Homepage/Page Optimizer no longer applies everything at once. Choose exactly which recommendations to apply — SEO title & meta description, the page body rewrite (off by default — preview it first), each FAQ question individually, and each suggested internal link individually.
* Every applied change is now individually reversible. A new "Recent changes to this page" list lets you roll back one specific change (e.g. just one internal link, or just the FAQ) without undoing anything else you've since applied — rollback is no longer all-or-nothing.

= 1.0.8 =
* Fixed a critical bug in the Homepage/Page Optimizer where applying an SEO title recommendation overwrote the page's actual title — which could show up in navigation menus and breadcrumbs as a long SEO-style title instead of your normal page name. The SEO title now only ever updates the search-engine-facing title tag, never the page's own title.
* Fixed "New FAQ" recommendations in the Optimizer not actually appearing anywhere after being approved. Approved FAQs are now added to the page as a real, visible section, plus proper FAQPage schema markup (built directly from the same questions/answers you approved) for AI/answer-engine visibility.
* Fixed "Suggested internal links" in the Optimizer being display-only — approving them now actually inserts real links into the page content (each is skipped individually, without failing the rest, if its exact text can't be found).
* Re-running the Optimizer on the same page no longer duplicates the FAQ section or re-wraps already-linked text — both are now applied idempotently.

= 1.0.7 =
* Fixed a bug where running a Website Audit on the Pro or Agency plan could fail with "This feature requires a higher plan" even though audits are included in every plan.
* Website Audit now scores AEO (answer-engine optimization) as its own category, based on your site's actual schema.org/FAQ markup, instead of only ever showing 0.
* Recommendations are now grounded in what was actually scanned — e.g. it no longer tells you to "add more blog content" when your site has no blog, or to "install an SEO plugin" when SiteProPilot already provides that.
* The audit prompt is now tuned for consistency, so re-running an audit on an unchanged site returns essentially the same score and recommendations instead of noticeably different results each time.
* Audit results now show what was actually scanned (pages/posts/images counted, SEO plugin detected) alongside a plain-language summary of the site's overall standing.

= 1.0.6 =
* Fixed the Overview and Settings screens showing a stale plan (e.g. still "Free" right after upgrading, or an upgrade prompt while already on the top Agency plan). Plan and billing status are now always read live instead of from a snapshot taken when the site first connected.

= 1.0.5 =
* Fixed background jobs (audits, bulk image SEO) getting stuck at 0% forever on hosts where WordPress's background scheduler (WP-Cron) doesn't fire reliably. Progress no longer depends on that working — the Tasks and Overview screens now drive jobs forward directly while you're watching them.

= 1.0.4 =
* Fixed a timezone bug where the Tasks screen (and other timestamps) could show wildly wrong elapsed/running times — e.g. a job that just started reading as "running 5h 30m" on sites not set to UTC. Timestamps are now stored and read consistently in UTC throughout.
* Tasks screen now clearly distinguishes "queued" from "running," shows a live percentage while running, and explains what's happening if a job is waiting longer than usual to be picked up.

= 1.0.3 =
* Fixed a bug where real error messages from SiteProPilot Cloud never actually reached the screen — every failure showed a generic fallback message instead of the specific reason, because of a response-shape mismatch between the plugin and the admin UI.
* When a plan's monthly limit is reached (blog posts, SEO pages, images, or AI requests), the plugin now shows a clear "You've reached your plan's limit" prompt with a one-click Upgrade Plan button, instead of a plain error.

= 1.0.2 =
* Fixed a critical bug where background jobs needing more than one step (bulk image SEO fixes, and any longer-running audit) would get stuck at "running" and never finish — the queue now correctly keeps processing them instead of abandoning them after the first step.
* Added automatic timeout recovery: a job that genuinely stalls now fails clearly with a message instead of spinning forever.
* Raised the plugin's wait time for Cloud responses so slower AI requests (larger pages, longer content) have room to finish instead of timing out early.
* Analyze, Generate, and Scan actions now show elapsed time and status while working, instead of a plain spinner with no feedback.

= 1.0.1 =
* Overview: audit runs now show live progress instead of a blank refresh.
* Tasks: background jobs show elapsed/running time.
* Content: AI-suggested blog and landing page topics, one click to use.
* Media: the full Media Library (images and videos) is shown, not just items with issues.
* Settings: added a Plan & Billing section with upgrade checkout.
* Overview: added a prominent plan usage summary with an upgrade prompt.
* New: a SiteProPilot summary (score, usage, upgrade link) on the native WordPress dashboard.

= 1.0.0 =
* Initial release.
