=== Asteris Utility Suite ===
Contributors: asteriscommerce
Tags: smtp, image-optimization, duplicate-post, accessibility, analytics
Requires at least: 6.3
Tested up to: 7.0
Requires PHP: 8.1
Stable tag: 1.0.8
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Seven tools in one lightweight suite — SMTP, image optimisation, activity log, accessibility scanner, analytics, duplicate post, link cloaking.

== Description ==

Asteris Utility Suite is the free edition of the Asteris suite. Seven modules, no bloat, no upsell popups, no phone-home.

Install one plugin instead of seven. Toggle modules on or off from a single dashboard. Each module does one job well and stays out of the way when you don't need it.

**What's included:**

* **SMTP** — send mail through your own SMTP server. Plug in Gmail / Outlook / SendGrid / Mailgun credentials, see a log of the last 50 sends.
* **Image Optimisation** — automatic WebP + AVIF conversion on upload **and** bulk-optimise your whole existing media library (background queue, pause/resume). Smart `<picture>` serving sends each browser the smallest format it supports, and a derivative is only kept if it's actually smaller. Original backup + one-click restore.
* **Analytics + Pixels** — GA4 tag, Meta Pixel, basic Consent Mode v2. Loaded only on front-end pages, deferred to avoid blocking render.
* **Activity Log** — 30 day audit trail of admin actions: user logins, plugin activations, option changes, post edits. Filterable, exportable as JSON.
* **Accessibility Scanner** — page-by-page WCAG findings report. Catches missing alt text, low-contrast headings, skipped heading levels, links without descriptive text.
* **Duplicate Post** — one-click clone of any post, page, or custom post type; content, taxonomies and custom fields copied to a fresh draft. Replaces Yoast Duplicate Post.
* **Links** — cloak any URL into a short, branded link on your own domain and track its clicks. A lightweight link-shortener / Pretty Links alternative.

**Looking for more?** Asteris Utility Suite (paid) adds Security + Login, full SEO + AI suite, page caching with advanced-cache.php drop-in, scheduled cloud backups, the full Forms engine, and per-site Insights. See [asteriscommerce.com/asteris-utility-suite](https://asteriscommerce.com/asteris-utility-suite).

**Privacy:** Asteris Utility Suite makes no outbound network calls by default. No telemetry, no licence check, no analytics on you. The Analytics + Pixels module is the only outbound traffic it ever generates — and only when you explicitly configure a tracking ID.

== Why Asteris Utility Suite? ==

Built lean on purpose. Here's what you actually get:

1. **Tiny footprint** — about 160 KB zipped. Most "all-in-one" suites are 10-40 MB.
2. **One plugin instead of seven** — one thing to update, one settings area, one conflict surface instead of seven separate plugins.
3. **Only runs what you turn on** — every module toggles independently, and disabled modules load no code at all.
4. **Nothing loads on the front end unless it's needed** — the analytics tags are deferred and only output once you've actually set a tracking ID.
5. **No phone-home** — zero telemetry, no licence check, no usage data sent anywhere. The only outbound traffic is the tracking pixels you choose to switch on.
6. **Modern, efficient code** — built for PHP 8.1+, no jQuery dependency, no heavy framework bundled.
7. **Your data stays yours** — everything installs and runs on your own server. Not SaaS, no account required.
8. **GPL-2.0** — audit it, fork it, keep it forever.
9. **No nag screens** — the paid edition is mentioned once, never as a pop-up or a locked button.
10. **Built by people who run real sites** — five years of agency work behind it, not a weekend side project.

== Upgrade to Asteris Utility Suite (Pro) ==

The free plugin is complete and stays free. When you need more, the paid version adds the heavier modules — same one-plugin, no-bloat philosophy:

* **Security + Login** — brute-force throttling, 2FA, passkeys, malware + vulnerability scanners
* **SEO + AI Suite** — meta, schema, sitemaps, llms.txt, AI content generator, Search Console integration
* **Performance** — page caching with an advanced-cache.php drop-in, Core Web Vitals monitor, HTML rewriter
* **Backups** — streaming database dumps, file archives, cloud destinations, one-click restore + clone sandbox
* **Forms** — a full form builder with uploads, signatures, calculations and webhooks
* **Insights** — per-site visitor analytics, plus the two-way Data sources (Search Console, Bing, GA4 Data API)
* **AI Suite** — AI content helpers: long copy, excerpts, SEO meta, and image alt text from a brief + your keywords (bring-your-own AI key)
* The **Pro tier of all seven free modules**

One standard price, no per-site upsells, the same lightweight build. See everything included at [asteriscommerce.com/asteris-utility-suite](https://asteriscommerce.com/asteris-utility-suite).

== External services ==

Asteris Utility Suite does not connect to any external service on its own. Three optional **integrations inside the Analytics + Pixels module** load third-party scripts only when YOU paste in the relevant tracking ID via Asteris → Analytics + Pixels:

**Google Analytics 4 (GA4) + Google Tag Manager (GTM)**
* What: Tracks pageviews + events for your own analytics dashboards.
* When: A request is sent to `www.googletagmanager.com` on every front-end page load once you save a GA4 Measurement ID and/or a GTM Container ID.
* Data sent: Standard browser pageview ping (URL, referrer, user agent, screen size, language) plus any custom events you trigger.
* Provided by Google. [Terms of Service](https://marketingplatform.google.com/about/analytics/terms/us/) · [Privacy Policy](https://policies.google.com/privacy)

**Meta Pixel (Facebook)**
* What: Tracks pageviews + conversions for Meta ad campaigns.
* When: A request is sent to `connect.facebook.net` and `www.facebook.com/tr` on every front-end page load once you save a Meta Pixel ID.
* Data sent: Standard pageview ping plus any custom events you trigger.
* Provided by Meta Platforms, Inc. [Business Tools Terms](https://www.facebook.com/legal/terms/businesstools) · [Privacy Policy](https://www.facebook.com/privacy/policy)

If you do not enter a tracking ID for a given integration, no requests to that service are sent.

**SMTP mail server (you choose the provider)**
* What: When the SMTP module is enabled, outgoing site email (`wp_mail()`) is delivered through the SMTP server **you** configure — for example Gmail, Outlook, Amazon SES, SendGrid, Mailgun, or any other SMTP host.
* When: A connection is made to your configured SMTP host only at the moment WordPress sends an email, and only after you have entered host/credentials and enabled the module.
* Data sent: The contents of the emails your site sends (recipient, subject, body, headers) plus the authentication credentials you supply, transmitted to the host you nominated.
* Provided by the third-party mail provider you select. Review that provider's own terms and privacy policy (e.g. [Amazon SES](https://aws.amazon.com/service-terms/), [SendGrid](https://www.twilio.com/en-us/legal/tos), [Mailgun](https://www.mailgun.com/legal/terms/)). No mail is sent to any Asteris-operated server at any point.

== Installation ==

1. Upload the plugin folder to `/wp-content/plugins/` (or install via Plugins → Add New → Upload Plugin).
2. Activate via the Plugins screen.
3. Visit **Asteris** in the WordPress admin sidebar to enable the modules you want.

== Frequently Asked Questions ==

= Does Asteris Utility Suite send my data anywhere? =

No. The plugin makes zero outbound calls. The Analytics + Pixels module sends pageview pings to Google or Meta only when you turn it on and supply your own tracking IDs.

= How do I upgrade to the paid version? =

Buy a licence at [asteriscommerce.com/asteris-utility-suite](https://asteriscommerce.com/asteris-utility-suite). The paid version installs over the free one in the same folder and replaces it — your settings, data, and snippets carry over automatically.

= Can I run the free and paid versions at the same time? =

No — and you don't need to. The paid version is the same plugin with the full feature set unlocked; installing it replaces the free copy in place, keeping all your settings and data.

= What's in the paid version that's not here? =

Security + Login (brute-force throttling, 2FA, passkeys, malware + vulnerability scanners), full SEO + AI Suite (meta, schema, sitemaps, llms.txt, AI generator, Search Console integration), Performance (page cache + advanced-cache.php, CWV monitor, HTML rewriter), Backups (streaming DB dumps, files zip, cloud destinations, restore + clone sandbox), Forms (full builder with file uploads, signatures, calculations, webhooks), Insights (per-site visitor analytics with mu-plugin fast-path), AI Suite (AI content helpers — long copy, excerpts, meta, alt text). Plus the Pro tiers of all seven free modules.

= Does it work with WooCommerce? =

It runs alongside WooCommerce with no conflict. If you also use our separate Asteris for WooCommerce plugin, the two coordinate so you don't get duplicate modules.

== Screenshots ==

1. Module dashboard — toggle each module on or off from one screen.
2. Activity Log — 30-day audit trail of admin actions, filterable by user and action type.
3. SMTP settings — six provider presets (Gmail / Outlook / SendGrid / Mailgun / SES / generic) plus a per-send log.
4. Accessibility scanner — page-level WCAG findings with severity badges and per-issue suggestions.
5. Image Optimisation — automatic WebP + AVIF generation on upload with quality sliders and per-image savings stats.
6. Analytics + Pixels — GA4, Google Tag Manager, and Meta Pixel configuration with EU Consent Mode v2 and Global Privacy Control support.

== Translations ==

Asteris Utility Suite is translation-ready. The plugin ships with a `.pot` file in `/languages/`. To contribute a translation, visit [translate.wordpress.org/projects/wp-plugins/asteris-utility-suite](https://translate.wordpress.org/projects/wp-plugins/asteris-utility-suite).

== Changelog ==

= 1.0.8 =
* Two more free modules — the free edition now ships **seven**. Added **Duplicate Post** (one-click clone of any post, page or custom post type; replaces Yoast Duplicate Post) and **Links** (cloak any URL into a short branded link on your own domain + click tracking — a lightweight Pretty Links alternative).

= 1.0.7 =
* SMTP + Email Logs: redesigned the settings screen into a clearer two-step flow — turn it on and choose your email service, then enter your login. The technical host / port / encryption fields auto-fill from your chosen service and tuck into an optional Advanced section. Plainer labels and help text throughout.

= 1.0.6 =
* Security: the Safe-Mode kill switch now verifies the `manage_options` capability before any cookie is set or cleared, so the exit URL (`?asteris_safe_mode=0`) can no longer change state via an unauthenticated request.

= 1.0.2 =
* Security hardening: tightened a REST permission check, added nonce + capability verification to an admin GET action, unslashed/sanitised all request inputs, and converted database queries to fully prepared statements with `%i` table identifiers.

= 1.0.1 =
* Code Snippets module removed — superseded by WPCode / Code Snippets (both free on WordPress.org) which serve this category competently. Asteris focuses on modules where it adds genuine differentiation (analytics pipeline, SEO+AI suite in paid, accessibility automation). Existing snippets in the `wp_asteris_snippets` table are preserved on upgrade — install a dedicated snippets plugin to continue using them. Module count is now 5.

= 1.0.0 =
* Initial release. Six modules: Code Snippets (full), SMTP, Image Optimisation, Activity Log, Accessibility Scanner, Analytics + Pixels.
