=== Launchmind Blog ===
Contributors: launchmind
Tags: blog, content, ai, seo, articles
Requires at least: 5.8
Tested up to: 6.9
Requires PHP: 7.4
Stable tag: 5.1.7
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Display AI-powered Launchmind blog content on your WordPress site.
== Changelog ==
= 5.1.7 =
* **Auto-detect brand colour for the article-page topbar backdrop.** 5.1.5 added a contrast-safe but neutral backdrop (#101418 / #f5f5f5) behind the topbar on single-article pages whenever the host theme's topbar text was about to disappear against the article body. 5.1.7 makes the backdrop **brand-aware** by sampling the topbar's actual background colour on the homepage and using that on the article page. Mechanism: the sticky-detect script loads `/` in a hidden same-origin iframe during browser idle time, runs the same topbar detector inside that document, walks the topbar's ancestor chain to find the first non-transparent background, and writes the resulting colour to localStorage with a 24-hour TTL. First visit shows the neutral fallback for ~1 second while sampling completes, then swaps to the brand colour with a smooth 220ms transition; every subsequent visit applies the cached brand colour instantly on first paint. Resolution order: theme-set `--launchmind-article-topbar-bg` CSS variable wins, then cached brand colour, then neutral contrast fallback, then async homepage sample. Customers can still override with a single CSS line if the auto-detection picks the wrong region. The whole feature degrades silently — sites that block iframe-of-self via `X-Frame-Options DENY`, themes without a sticky topbar, or homepages where the topbar genuinely is the article-body colour all stay on the neutral fallback (or no backdrop at all). No new options, no admin setup, no breaking changes for installs that don't have a topbar contrast collision.
= 5.1.6 =
* **Critical fix for 5.1.5 page-builder rendering.** 5.1.5 introduced cover-image and category-pill rendering for Launchmind articles inside page-builder Post Loops, but on real Breakdance / Bricks / Oxygen sites the cards still rendered without an `
` and with an empty pill. Root cause: the `virtual_thumbnail_id`, `virtual_thumbnail`, `virtual_has_thumbnail`, and `virtual_terms` filters all called `get_post($virtual_id)` to resolve the article, but virtual Launchmind posts have no `wp_posts` row — so on a cold object cache the call did a DB lookup, returned null, and the filters silently returned the original (empty) value. Page builders therefore got `_thumbnail_id = 0` and an empty term list and skipped emitting the inline `