=== Enhanceo ===
Contributors: hassanraza
Tags: seo, open graph, xml sitemap, schema, meta tags
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 8.0
Stable tag: 1.0.0
Author: Hassan Raza
Author URI: https://profiles.wordpress.org/hassanraza/
Author Website: https://hassan-raza.com
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

A clean, powerful SEO plugin. Meta tags, Open Graph, Twitter Cards, XML Sitemap, and Schema.org JSON-LD — everything you need, nothing you don't.

== Description ==

Enhanceo gives you everything you need for on-page SEO without the confusion of heavyweight plugins. No upsells, no redirects to dashboards, no unnecessary features. Just solid SEO fundamentals that work for any kind of website.

**What it does:**

* **Meta Title & Description** — Per-post and per-page overrides with a live Google preview
* **Title Templates** — Use variables like `%title%`, `%sitename%`, `%sep%`, `%category%`, `%author%` across all post types
* **Open Graph tags** — Full og: meta support for Facebook, LinkedIn, and more
* **Twitter / X Cards** — summary or summary_large_image cards
* **Canonical URLs** — Global and per-post canonical control
* **Robots Meta** — Per-post noindex/nofollow, plus global archive rules
* **XML Sitemap** — Auto-generated sitemap index with sub-sitemaps per post type and taxonomy, including image support
* **Schema.org JSON-LD** — WebSite, Organization/Person, WebPage, Article, and BreadcrumbList structured data
* **Character Counters** — Live visual feedback on title and description length directly in the editor
* **WP Cleanup** — Remove generator tag, RSD link, and shortlink from `<head>`
* **Search Engine Pinging** — Notifies Google and Bing automatically on publish

**No tracking. No telemetry. No accounts required.**

== Installation ==

1. Upload the `enhanceo` folder to `/wp-content/plugins/`
2. Activate the plugin through the **Plugins** menu in WordPress
3. Go to **Enhanceo** in your admin sidebar to configure settings

== Frequently Asked Questions ==

= Does it conflict with other SEO plugins? =
You should only run one SEO plugin at a time. If you have another SEO plugin active, deactivate it before using Enhanceo to avoid duplicate meta tags.

= Where is my sitemap? =
At `yourdomain.com/sitemap.xml`. You can enable/disable it and choose which post types and taxonomies to include under **Enhanceo → Sitemap**.

= Can I set a custom title and description per post? =
Yes. A metabox appears on every post/page edit screen with a live Google preview, character counters, and fields for title, description, social image, robots, and canonical URL.

= Does it support custom post types? =
Yes. Title templates and metaboxes work on all public post types automatically.

= Is it compatible with the block editor (Gutenberg)? =
Yes. The metabox appears in the sidebar for all editors.

= Does it contact any external services? =
When a post or page is published, the plugin optionally notifies Google and Bing of your sitemap URL. This sends only your public sitemap URL to `google.com/ping` and `bing.com/ping` — no personal data, no user data. You can disable this by disabling the sitemap entirely under Enhanceo → Sitemap.

== External Services ==

This plugin contacts the following external services under specific conditions:

**Google Ping** (`https://www.google.com/ping`)
When a post or page is published, the plugin sends your sitemap URL to Google's ping endpoint to notify it of new content. Only your public sitemap URL is transmitted. No user data or personal information is sent.
- [Google Privacy Policy](https://policies.google.com/privacy)

**Bing Ping** (`https://www.bing.com/ping`)
Same as above, for Bing/Microsoft search.
- [Microsoft Privacy Policy](https://privacy.microsoft.com/en-us/privacystatement)

Both pings can be disabled by turning off the XML Sitemap under **Enhanceo → Sitemap**.

== Privacy Policy ==

Enhanceo does not collect, store, or transmit any personal data about site visitors or site administrators. All SEO data (titles, descriptions, etc.) is stored locally in your WordPress database.

The only external contact this plugin makes is the optional search engine ping described above, which transmits only a public URL.

== Screenshots ==

1. Settings — General (title templates, robots)
2. Settings — Social (Open Graph, Twitter Cards)
3. Settings — Sitemap
4. Settings — Schema.org
5. Post editor metabox with live Google preview

== Changelog ==

= 1.0.0 =
* Initial release
