=== OG Images by MatthewxMurphy.com ===
Contributors: matthewxmurphy
Tags: open graph, social images, sitemap, favicon
Requires at least: 7.1.3
Tested up to: 7.1.3
Requires PHP: 8.3
Stable tag: 2026.10.12.001
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Page-specific OG images with sitemap discovery, visual review evidence, owner locks and site branding.

== Description ==
LocalPro candidate 2026.10.10.003 includes the established Free-default OG Images package, derived from canonical release 2026.10.06.001. This is a local source candidate; packaging, WordPress 7.1.3/PHP 8.3 runtime verification and release approval are coordinated separately. Installing this package includes no paid license and enables no commercial service connection.

Free shows and manages up to 10 links with sitemap discovery/inventory, public metadata and image-byte inspection, guarded local artwork assignment and visual review, favicon replacement, login branding and a source-only MatthewxMurphy.com credit. Pro's detailed saved diagnostics and supplied image calendar remain license-gated. Developer's licensed site allowance and optional service-backed management remain separately opted into. Existing site-bound licenses and grants are preserved; this package supplies none.

Use this site's native WordPress Media Library to upload finished artwork. Ordinary artwork assignment uses the guarded API for an authorized owner/agent, with current page revision, locks, claims, local attachment validation and image-hash-bound visual review. Favicon and login branding have dashboard Media Library pickers. The optional POST media image-processing route is unavailable in this redistribution and returns an explicit HTTP 503 response for a valid guarded request. Private processor transport, configuration readers and original-byte archiving are excluded.

New installations use Free, an empty inventory, unlocked settings and enabled override handling; no override exists until reviewed artwork is assigned. Update checks and automatic installations are off. Calendar configuration is empty and disabled, Developer management is disconnected, no agent credential is supplied, and no generation, publishing or background job is started.

The extension owns approved OG/Twitter image overrides. Yoast keeps native resolved titles, descriptions and other metadata unless copy is explicitly overridden. Use one social metadata owner. This package retains canonical Yoast integration and generic fallback rendering; additional SEO-plugin integrations are not asserted. Assignment requests exact-page Cache Enabler invalidation when that plugin is available; public verification and social-platform cache observations remain separate.

Images must be 1200 x 630 with text/logo bounds at least 30 pixels inside each edge. Actual local bytes and an explicit review are required. Public metadata and image bytes are re-fetched before a page is counted as good. Dimensions alone do not establish visual quality.

== Your image calendar (Pro and Developer) ==

Create your own seasons, holidays, campaigns or other named timeframes. The calendar starts empty and disabled. Nothing assumes that your site celebrates Christmas or any other holiday. Supply the finished graphics yourself; the plugin does not create, decorate or redesign images.

Choose or upload a 1200 × 630 JPEG, PNG or WebP from this site's Media Library (up to 8 MiB). Preview and confirm its use, enter the event's start and inclusive end date, and select which discovered public pages it applies to. One-time dates are the default; annual repetition is optional. Use exact dates for holidays whose dates move between years. Missing images may be saved as drafts and remain inactive.

Dates follow the website's WordPress timezone and server clock. Higher-priority matching events win overlaps, with stable event IDs resolving a tie. The worker selects the supplied complete image and restores the previous OG image afterward, including returning to normal SEO/featured-image fallback where no plugin override existed. It leaves image files, article content and featured images untouched.

Site/page locks, active agent assignments, exclusions and uncertain-operation holds remain protected. A later manual image selection wins. Changed or missing image bytes prevent unverified selection; incomplete restoration stays queued. WordPress cron and third-party preview caches can delay visible changes. No posting or social reshare occurs.

The previous automatic decoration interface is retired. Its saved artwork and history remain intact; previously active .010 selections use restoration-only cleanup. The new calendar does not adopt any old holiday choices and does not contact a remote calendar service.

== Installation ==
This is source-only candidate documentation. Before external distribution or a live-site update, publish its permanent public version notes and complete the authorized integration/rollout checks. Retain prior artifacts and notes.

1. For an authorized release, back up the exact plugin and affected database, then install and activate only this plugin on the intended WordPress site.
2. Open OG Images in WordPress with a native administrator session over HTTPS. A dedicated agent Bearer token is optional and must be supplied by the site owner.
3. Review site/page locks. A site administrator may explicitly connect a commercially licensed Developer installation after the server integration is available.
4. Discover sitemaps, inspect, review, upload/assign eligible artwork and verify public output.
5. For Pro/Developer, add an event to Your image calendar, supply and preview your own graphic, select dates and target pages, and confirm/save it. Enable the calendar when ready. Verify the resulting public share image.

The update service remains at https://creatorpublishinghub.com/wp-json/cph-og/v1/updates/cph-og-images. WordPress automatic updates remain the owner's choice. Packages are verified against the published SHA-256 before installation.

== External services ==
The updater contacts creatorpublishinghub.com for version metadata and package bytes only after the owner enables update checks. Automatic installation remains off by default. The commercial license connector sends an explicitly purchaser-supplied license key only to the fixed HTTPS license service on that domain, stores it encrypted locally and does not return it in status or logs. Public offers are fetched only after a commercial key is configured; a fresh Free dashboard does not fetch that catalog. Entitlements are revalidated at most every 60 seconds. Developer network management is separately opt-in and uses an independent site credential; it reports site URL, plugin version, audit counts, locks and command receipts to the same service. Disconnecting stops local polling. Each license sees only its enrolled sites; the existing private owner fleet is separate. Remote software installation and updates are not implemented by this candidate.

The custom image calendar runs locally using the website server clock and WordPress timezone. It sends no calendar, image or page data to a remote holiday service.

This redistribution excludes private image-processing transport and configuration; its compatibility route reports unavailable and does not send or archive uploaded image bytes. Facebook debugger links open Meta's service; site audits are not proof that Meta refreshed its cache.

== Ownership ==
Developed, owned and copyrighted by MatthewxMurphy.com. Existing package identity, update hosting, saved settings and licenses are preserved.

== Changelog ==
= 2026.10.10.003 (LocalPro source candidate) =
Include full canonical Free10 sitemap discovery, public inspection, guarded local artwork assignment/review and local favicon/login branding. Remove private processor transport and configuration; keep an explicit unavailable response. Prevent fresh Free dashboard catalog requests. Retain paid license gates, original technical identity, GPL-2.0-or-later licensing and MatthewxMurphy.com ownership. Target WordPress 7.1.3 and PHP 8.3; runtime QA and release approval are separate.

= 2026.10.06.001 =
Site-owned custom image calendar with customer-supplied graphics, arbitrary event names and inclusive dates, optional annual repetition, selected-page or site-wide targeting, protected switching/restoration and no generated artwork or default holidays.

= 2026.10.05.010 =
Add Pro/Developer recurring seasonal themes, a server-driven calendar evaluated in the site's WordPress timezone, per-page variant review and protected automatic/manual switching with restoration. Report discovered-only readiness snapshots with bounded scans. Installation remains inactive; cron timing and social cache refresh are not delivery guarantees. No live rollout or merchant checkout is verified; public version notes are required before distribution.

= 2026.10.05.009 (unreleased source candidate) =
Limit Free management to 10 links without deleting saved records. Add Pro diagnostic detail, proposed standalone plan offers, a protected commercial-license connector and opt-in Developer site management. Checkout and customer rollout remain pending integration verification.

= 2026.10.05.008 =
Rename the product to OG Images by MatthewxMurphy.com across plugin details, dashboard, documentation and the Free source credit. Accept current padded-day calendar releases while retaining legacy update versions. Existing licensing, security gates, artwork and integration identifiers are unchanged.

= 2026.9.26.04 =
Preserve resolved native Yoast copy, invalidate only the assigned page cache, flag unresolved share-title templates, and finalize media validation errors without leaving pending receipts. Document required upload title.

= 2026.9.26.03 =
Add signed, site-bound Pro entitlements, private owner grants, owner-only license controls, and tested expiry/renewal behavior. Free remained capped at 50 links in that release and existing artwork was preserved.

= 2026.9.26.02 =
Fix native WordPress media uploads by passing the sideload descriptor by reference. Regression tests now match the WordPress function signature.

= 2026.9.26.01 =
Initial shared OG image extension, lock guardrails, source credit, site branding, central priority dashboard and calendar-versioned updates.
