=== Help4 Builder Suite ===
Contributors: help4network
Tags: page builder, templates, seo, local seo, commerce
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 8.1
Stable tag: 1.3.410
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Visual builder with templates, icons, SEO, forms, commerce, performance, and security tools for WordPress.

== Description ==

Help4 Builder Suite is the plugin layer for the Help4 blank-theme workflow. It adds visual building, theme parts, starter templates, original multi-page Site Kits, SVG icons, layered sliders, professional content widgets, Website Snapshot blocks, forms, Help4 Commerce, payment routing, SEO, performance, and security tools.

Site Kits create reviewable draft pages, draft header/footer/404 templates, and an isolated navigation menu for local services, professional firms, creative studios, nonprofits, learning academies, memberships, native commerce, product businesses, real estate teams, clinics, WordPress providers, and editorial publishers. A kit never publishes content, replaces existing pages, changes the front page, or assigns global templates automatically. Applying the kit's global style tokens is a separate opt-in action protected against stale Studio sessions.

Commerce Indicator elements give headers and utility bars editable cart, wishlist, compare, notification, or add-on counts. Site owners can independently choose whether the indicator remains visible at zero and whether its quantity number is displayed when a count exists. Counts can come from server-side filters, browser storage, the native comparison tool, or documented live-update events without reloading the page.

Help4 Commerce products can use customer-selectable quantities or fixed one-unit cart lines. Fixed-line mode removes quantity controls from checkout, rejects altered quantities at the server, and preserves repeated configured bundles or packages as separate order lines. This is independent of the stricter one-per-order setting.

Help4 Email Marketing provides a self-hosted audience, campaign, reusable-template, dynamic-segment, and drip-automation workspace. Public signup forms require explicit consent and email confirmation before activation. Campaign preparation snapshots the intended audience, then a bounded queue applies the administrator's daily cap, retries transient failures, pauses when sender-readiness checks fail, and reports transport acceptance without claiming inbox delivery. Optional first-party open and click measurement uses signed links, filters known scanner activity, and is disabled by default. Global suppression, one-click unsubscribe, WordPress privacy export/erasure, and suggested privacy-policy text are built in. Prospect discovery, website research, and contact scraping are not part of this public module.

Help4 Dynamic Data connects posts, pages, public post properties, custom fields, taxonomy terms, authors, site information, Help4 Commerce products, product fields, and variants to Builder widgets through one validated source contract. Field groups include rich content, media, relationships, repeaters, taxonomy/users, computed formulas, validation rules, access controls, REST editing, stale-save protection, and isolated product-field storage. Private options, user details, request data, metadata, and commerce secrets remain denied by default.

Help4 SEO includes search and readability scoring, related-keyphrase coverage, a bounded sitewide internal-link graph, content-orphan and weak-link review candidates, preview-first migration from supported SEO plugins, resumable outbound-link health checks, international hreflang targeting, accessible Open Graph and X previews, global webmaster verification, connected schema, real-estate listing graphs, author expertise, breadcrumbs, image audits, redirects, 404 logging, RSS attribution, durable IndexNow queues, indexing health, and XML/video/news discovery. Its coverage report maps portable standards to international search engines, social networks, messaging clients, and collaboration previews without inventing vendor tags. Help4 Local SEO adds single or multiple business locations, categories, inherited business defaults, per-location overrides, split and special hours, service areas, maps, a responsive store finder, LocalBusiness-family schema, a location sitemap, and KML. These tools do not require a paid feature tier.

The companion Help4 Blank theme is a separate download because WordPress.org treats plugins and themes as separate packages. Download the current theme ZIP from https://help4wordpress.com/help4-blank/latest.zip or open https://help4wordpress.com/help4-blank-theme/ for screenshots, compatibility guidance, and installation steps.

The plugin does not send hidden Help4 telemetry, analytics beacons, or referral tracking. Product Insights installation reporting is disabled by default and begins only after a managing administrator reviews the exact payload and explicitly consents. Help4-owned marketing download routes count aggregate download starts without storing visitor IP addresses; those starts do not prove completion, activation, or continued use. Optional email-campaign engagement reporting is first-party, disabled by default, and runs only for campaigns sent after an administrator enables it. Other optional external services are used only after an administrator configures a feature, adds an embed, enters a feed/webhook/payment endpoint, or uses the live Help4 update channel.

== Installation ==

1. Upload the `help4-builder-suite` folder to `/wp-content/plugins/`.
2. Activate Help4 Builder Suite in WordPress.
3. If you want the clean blank-theme workflow, upload `help4-blank.zip` from https://help4wordpress.com/help4-blank/latest.zip under Appearance > Themes > Add New > Upload Theme.
4. Configure Builder Suite settings, then start with Site Kits, the template library, or the visual builder.

== Multisite ==

When the plugin is network activated, Network Admin > Help4 Network provides a dedicated control plane for Builder provisioning and search readiness across the current network.

* Existing and newly created sites receive their own Help4 database tables and version marker through bounded background provisioning.
* Network SEO defaults fill new or empty values without replacing settings owned by a site administrator. Super administrators can separately opt in to enforcement for a small allowlist of organization and discovery settings.
* Search verification tokens, customer data, payment data, and IndexNow keys are never shared across sites. Every public site that enables IndexNow receives its own key and queue.
* The sites table shows indexing status, sitemap destination, Builder usage, saved SEO-health results, IndexNow status, and per-site database readiness.
* Bulk actions can provision selected sites, apply defaults, queue a resumable SEO/sitemap audit, or queue a full IndexNow sweep. Health work runs one site per background step to avoid a network-wide request spike.
* Help4 preserves WordPress virtual per-site robots output on multisite. If a physical `robots.txt` exists at the shared WordPress root, Network Admin displays a warning because that one file can hide rules for mapped-domain or subdirectory sites.

== External Services ==

No remote calls happen on activation. Optional services run only after administrator configuration or user action:

* Help4 update channel: live packages can check manifests/download ZIPs from help4wordpress.com, plugins.help4wordpress.com, plugin.help4wordpress.com, or md.help4wordpress.com. Sends server IP and user agent. Terms/privacy: https://help4wordpress.com/terms/ https://help4wordpress.com/privacy-policy/
* I.G.O.R. Feedback: administrators can choose to send a feedback report from the plugin to help4wordpress.com. This is never sent in the background; it requires a manual submit action and consent checkbox. The report sends the typed issue details, optional reply contact, site URL, WordPress/PHP versions, active theme, active plugin names/versions, enabled Builder Suite modules, and non-secret Help4 settings. It does not send cookies, saved payment keys, API secrets, application passwords, raw logs, database content, or customer records. Terms/privacy: https://help4wordpress.com/terms/ https://help4wordpress.com/privacy-policy/
* Product Insights: disabled by default. After a managing administrator reviews the exact payload and opts in, the plugin sends the public site URL/domain, Builder Suite version/build, WordPress and PHP versions, active theme slug/version, enabled Help4 module names, release channel, environment type, multisite status, a random installation ID/token, and send time to help4wordpress.com once per week. It does not send page content, users, customer records, form entries, email addresses, cookies, secrets, or raw logs. The same screen can stop sharing and request deletion of that installation record; failed deletion requests remain queued for retry. Help4-owned marketing download routes separately store daily aggregates for product, release version, referrer host, source, campaign, count, and last-seen time without storing visitor IP addresses. Terms/privacy: https://help4wordpress.com/terms/ https://help4wordpress.com/privacy-policy/
* Google Maps/Places/Search/embeds: only for configured map, business, embed, or search helpers. Sends Place ID, API key, requested fields, query/embed data, server IP, user agent, and browser metadata. Terms/privacy: https://cloud.google.com/maps-platform/terms https://policies.google.com/terms https://policies.google.com/privacy
* Cloudflare Turnstile: only after a site administrator explicitly selects Turnstile and saves a site key and secret under Help4 Forms. The browser requests Cloudflare's widget script; verification sends the private secret, short-lived widget response, submitter IP when available, and an idempotency identifier to Cloudflare. Disabled or incompletely configured mode does not contact Cloudflare. Terms/privacy: https://www.cloudflare.com/website-terms/ https://www.cloudflare.com/privacypolicy/
* IndexNow: only after an administrator enables IndexNow on an indexable public site. Sends the public site host, verification key and key location, and changed, deleted, or manually queued public URLs to the configured IndexNow endpoint in batches of up to 500. Stores response status and retry diagnostics in WordPress. Terms/privacy: https://www.indexnow.org/documentation https://www.indexnow.org/terms
* Outbound link health: only after an administrator starts a scan in SEO Control. Sends a safe HEAD request, or a bounded GET fallback when HEAD is rejected, to external URLs already linked from published content or Builder layouts. The remote site receives the server IP, public site URL in the Help4 link-health user agent, and normal HTTP metadata. Help4 does not send page content, cookies, visitor information, credentials, or customer records. Each scan is capped at 500 content items and 2,000 unique URLs and retries only bounded transient failures. The linked site's own terms and privacy policy apply.
* Email delivery: campaign, automation, and confirmation messages use the site's configured WordPress mail transport. If the administrator configures an external SMTP or email-delivery provider, that provider receives the recipient address, sender and reply-to details, subject, message body, and normal delivery metadata when a message is sent. Help4 does not select or contact a provider on activation. The administrator must document the chosen provider's terms and privacy policy.
* YouTube, Vimeo, administrator-configured HLS/MP4 media hosts, WordPress.com mShots, feeds, payment-router endpoints, and webhooks: only when configured in a layout, video player, snapshot, import, checkout route, or form. Sends configured URL/data plus normal request metadata. HLS.js is bundled locally; media requests go only to the configured media host. Terms/privacy: https://www.youtube.com/t/terms https://vimeo.com/terms https://wordpress.com/tos/ https://automattic.com/privacy/

== Changelog ==

= 1.3.410 =
* Keep ordinary featured-image, taxonomy, title, excerpt, and status updates on third-party content types from creating or changing Builder documents or metadata.
* Stop the classic post editor from silently re-enabling a disabled Builder layout.
* Quarantine the exact legacy one-block Builder starter document on custom content until a user deliberately adopts it in Builder Studio.

= 1.3.409 =
* Preserve validated responsive `srcset`, `sizes`, and `decoding` attributes in Builder HTML blocks generated by WordPress media helpers.
* Keep Studio preview, saved layouts, and public rendering on the same responsive-image sanitizer contract while rejecting unsafe protocols, descriptors, CSS tokens, event handlers, and decoding values.

= 1.3.408 =
* Add context-specific best-size help for image, logo, hero, background, slider, poster, portrait, product, gallery, event, email, screenshot, favicon, and social-image inputs.
* Show the selected image's real pixel dimensions and warn about undersized sources, unexpected crops, mixed gallery ratios, and unsuitable formats before publishing.
* Keep one accessible, filterable image-guidance contract across Builder Studio, sliders, staff, calendar, commerce, SEO, dynamic fields, and other Help4 admin workspaces.
* Load the existing first-party measurement and local-business frontend scripts with a nonblocking defer strategy.

= 1.3.407 =
* Remove stale plugin or Help4 Blank update offers when the advertised version is not newer than the installed version.
* Compare two valid first-party manifests and use the highest semantic version instead of trusting the first reachable cache response.
* Prefer the highest version declared inside a manifest when its latest-version label is stale.

= 1.3.406 =
* Keep the live page visibly usable when selecting an element opens the inspector in desktop canvas-focus mode.
* Prevent the hidden library rail from collapsing the main workspace to a narrow strip while preserving tablet, mobile, and non-focus layouts.

= 1.3.405 =
* Let staff select page-owned sections and elements directly from the verified actual-current-draft surface, then open the matching inspector without hunting through Navigator.
* Keep exact-draft selection locked until the unsaved revision fingerprint and frontend asset audit pass, with clear feedback for site-wide template items and unavailable previews.
* Add keyboard selection, visible focus treatment, and responsive staff guidance without adding permanent toolbar clutter or changing saved Builder layouts.

= 1.3.404 =
* Keep capability-authorized site and third-party Help4 child workspaces visible and directly reachable in simplified staff mode.
* Add documented extension filters for reserved Help4 slugs and staff-facing Work Home workspace cards.
* Surface site-specific workspaces in one clear Work Home section without exposing core advanced tools.

= 1.3.403 =
* Reserve an image block's intrinsic aspect ratio before its media arrives so responsive layouts do not shift while loading.
* Load the first automatic global-header image immediately at high priority while preserving lazy loading for ordinary and footer images.
* Add an editable image loading-priority control and keep Studio image geometry aligned with public Builder output.

= 1.3.402 =
* Keep visible breadcrumbs and BreadcrumbList schema on one filtered, normalized, duplicate-free item contract.
* Omit front-page breadcrumb output and prevent content schema from referencing a breadcrumb node that was not emitted.
* Add documented breadcrumb-item and content-schema filters while preserving WordPress term-link authority and existing organization-schema extensions.

= 1.3.401 =
* Preserve list and FAQ line boundaries through Builder save/reload and keep ordinary letters inside words untouched.
* Add a semantic H2-H6 title control for Call To Action elements while preserving H3 for existing layouts that do not opt in.
* Accept both legacy and canonical Help4 update-manifest fields so older installations can discover the current first-party package.
* Load WordPress Dashicons for public Builder output only when an effective layout renders a Dashicon element.

= 1.3.400 =
* Restore every familiar editing and publishing command inline on desktop while keeping the compact Actions menu on phones and tablets.
* Prevent the desktop Builder header from becoming a hidden horizontal command strip and keep all commands visibly contained at 1440 pixels.

= 1.3.399 =
* Replace the cramped compact Builder command strip with labeled navigation and a keyboard-friendly Actions menu that keeps every editing and publishing command available.
* Move the secondary Focus Canvas command into Builder Tools so phones and tablets keep the primary workspace free of horizontal toolbar scrolling.
* Give compact viewport presets a complete, unclipped device row and keep draft review and preview settings immediately below it.
* Compact Work Home on phones into a two-column task launcher with first-screen content search while keeping indexing warnings and task descriptions accessible.

= 1.3.398 =
* Make Calendar event changes lead to an unmistakable final save and make retries safe after a lost response.
* Keep Calendar recovery selections synchronized after each save while preserving protected source settings for delegated staff.
* Give mobile Staff Directory selection controls a real 44-by-44-pixel target without changing profile data.

= 1.3.397 =
* Give Calendar and Staff Directory workspaces dedicated staff capabilities while reserving calendar source connections for separately authorized administrators.
* Make Calendar save state truthful and conflict-safe, and keep Staff Directory navigation, filters, recovery, selection, and ordering reachable on phones.
* Replace the compact Builder icon wall with a labeled, keyboard-sized command strip and make viewport and editor controls easier to operate.
* Add touch and pen editing, format-aware output, bounded undo memory, and pre-upload size checks to Image Studio.

= 1.3.396 =
* Rebuild Image Studio around one safe workflow: choose an original, edit a working copy, undo or reset, then save a separate Media Library image.
* Preserve original attachment bytes and metadata while validating accessible image descriptions or an explicit decorative choice.
* Keep failed and retried saves idempotent so retained edits cannot silently create duplicate attachments.

= 1.3.395 =
* Load Calendar and Staff Directory public assets only when the requested page, event, or supported shortcode needs them.
* Mark Calendar and Staff public and admin scripts for deferred loading on supported WordPress versions.
* Keep Calendar daily actions keyboard-sized and remove inactive Undo/Redo controls from the initial staff view.

= 1.3.394 =
* Keep every visible slider pagination button at a non-shrinking 44-by-44-pixel semantic target while preserving the small visual dot.
* Keep long pagination sets contained and horizontally reachable without overlapping Pause or page content.
* Add bounded aggregate Plugin Check attribution so a slow standard or experimental stage cannot hide focused results.

= 1.3.393 =
* Add a preview-only older-message timestamp readiness workflow with explicit evidence, non-personal samples, cutoff delta, and no migration Apply control.
* Stamp new Form Entries with an explicit UTC basis and upgrade existing sites with indexed basis metadata while leaving historical records unresolved.
* Add a staged, bounded Plugin Check runner that records each check's duration, exit, timeout, and log rather than hiding a hung aggregate.

= 1.3.392 =
* Added a planning-only Forms Privacy & Retention workspace with frozen policy cutoffs, explicit preview validity, current-form validation, exact eligible and held counts, and a separately authorized fingerprint-bound CSV export of the exact eligible set.
* Added conflict-safe per-entry privacy holds with required reasons, actor and time evidence, revision checks, UUID replay protection, and separate privacy management/export capabilities.
* Privacy work does not delete, anonymize, archive, schedule, or pretend to apply changes; the streamed export is revalidated before download and fails closed rather than producing a stale or partial file.

= 1.3.391 =
* Added exact Form Entries queue counts and filter-preserving pagination instead of a fixed 200-message view.
* Added visible-page bulk status, assignment, archive, and restore workflows with accessible confirmation, stale-page protection, replay safety, and all-or-nothing database updates.

= 1.3.390 =
* Added an operational Form Entries inbox with staff status, assignment, internal notes, conflict-safe saves, reversible archive/restore, exact filtering, and filter-preserving CSV export.

= 1.3.389 =

* Consolidates each form's embed and archive tools behind one More actions disclosure while keeping Edit primary and submission counts actionable.
* Adds plain form inventory search, submission date filters, and nonce-protected CSV export with spreadsheet-formula neutralization.
* Adds the narrow `manage_help4_forms` capability to administrators by default and supports explicit trusted-role opt-in.

= 1.3.388 =

* Adds a task-first visual Forms workspace with ordered field cards, safe preview, progressive delivery settings, and POST-only named deletion confirmation.
* Preserves extension-owned field data while keeping raw schema out of the common staff path.

= 1.3.387 =
* Builder Studio and the companion theme now share an explicit automatic/show/hide page-title contract, preventing duplicate title bands while preserving exactly one designed H1.
* Studio opens at a viewport that fits the actual desktop, tablet, or mobile workspace and includes a true 768px tablet portrait preset.
* Same-origin draft and parity previews now report incomplete asset loading instead of presenting a degraded render as trustworthy layout evidence.

= 1.3.386 =
* Adds keyboard-accessible Quick Actions with plain-language search for common editing, design, responsive, navigation, history, and publishing tasks.
* Opens the existing real Builder workflow for each action and preserves dirty-state, capability, and explicit-save protections.

= 1.3.385 =
* Add a guided Review workspace that explains current page status, unsaved scope, blocking issues, and recommended accessibility and SEO checks before publication.
* Label the main save action as Save Draft or Update Live so staff know whether a change remains private or affects the public page.
* Add permission-gated publishing that saves the current Builder document before changing WordPress status and reports the final public state without bypassing revision protection.
* Add desktop, tablet, and mobile review controls with remembered completion state and compact-width keyboard support.

= 1.3.384 =
* Added a persistent selected-element action bar with direct Edit, Add Before, Add After, Add Inside, Move, Duplicate, and Delete controls.
* Contextual element and widget insertion now preserves the selected parent and column instead of silently adding to the end of the page.
* Added keyboard-accessible movement controls and mobile-sized targets so precise drag gestures are optional.
* Deep duplication now preserves nested containers, remaps every copied ID and parent relationship, and keeps extension data intact.
* Contextual structural actions remain undoable and unsaved until the normal page Save Changes action.

= 1.3.383 =

* Turn Page Design into a visual, searchable gallery with layout previews generated from each editable template rather than a repeated generic icon.
* Add plain-language purpose filters, design summaries, and desktop, tablet, and mobile preview modes before a template changes the draft.
* Give fresh pages one clear Use This Design action while keeping existing-page add and confirmed replacement choices inside the preview dialog.

= 1.3.382 =

* Give every fresh Builder page one clear starting choice: Blank Page, Page Design, Starter Site, or Copy Page.
* Keep first-page experiments local to Studio until the user explicitly saves, while preserving copied layout extensions and assigning fresh element IDs.
* Make fresh-page template replacement direct and place the four starting paths in a responsive, keyboard-accessible canvas prompt.

= 1.3.381 =

* Preserves the 1.3.379 Builder Studio workspace-fit and diagnostics improvements while adding the verified compact Staff Directory, responsive team preview, and safer recovery workflow.

= 1.3.379 =
* Make Fit Workspace the default Studio preview so the page remains readable while editing, while retaining Exact Device for final responsive QA.
* Collapse preset, frame, and exact-device controls into one compact Preview settings disclosure and reduce toolbar height at desktop, tablet, and mobile widths.
* Keep save state visible while moving build, parity, layout, load, and performance diagnostics into a contained Page checks disclosure.

= 1.3.378 =
* Rework Staff Directory profile editing around clear identity, portrait, role, biography, and contact tasks with advanced settings disclosed only when needed.
* Add portrait selection and focal previews, protected-owner confirmation, stale-save recovery, replay-safe writes, and role-honest compact-width controls.

= 1.3.376 =
* Replace the persistent Help4 admin navigator bar with a compact, closed-by-default Quick navigation menu that remains keyboard and mobile accessible.

= 1.3.374 =
* Add privacy-first download-start aggregates on Help4-owned routes and administrator-consented installation-domain adoption reporting with payload preview, status, retention, and remote deletion.
* Add an inspector-wide setting finder that searches Content, Design, and Advanced, supports keyboard navigation, opens collapsed groups, and focuses the selected control.
* Add detailed setting-finder and Product Insights tutorials and connect them to Builder Quick Help.

= 1.3.373 =
* Make Studio canvas-first with automatic library collapse during edits, a resizable inspector, larger desktop tools, and corrected compact-width panel layering.

= 1.3.372 =
* Add responsive admin data cards, mobile-safe controls, and workspace/section navigation across Help4 wp-admin screens.

= 1.3.371 =
* Keep the Builder canvas usable on compact laptops and expose every essential Studio action at mobile widths.

= 1.3.370 =
* Apply the shared effective robots contract to Staff Directory, tutorial catalog, and Local Business structured data.

= 1.3.369 =
* Suppress Course and Event rich-result schema whenever the effective request robots contract is noindex.

= 1.3.368 =
* Add fail-closed Event search readiness, event sitemap eligibility, staff checklist, native class catalog fields, synchronized Course schema, and environment-aware canonicals.

= 1.3.367 =
* Fix Builder H1 ownership detection for persisted Help4 Slider references whose rendered layers contain an H1.

= 1.3.366 =
* Binds duplicate-H1 guarding to the current singular page Builder wrapper so earlier global header/footer Builder templates do not hide the theme entry title from correction.

= 1.3.365 =
* Recognizes a real H1 element in a sanitized Builder HTML block as page-heading ownership so migrated layouts do not retain a duplicate theme entry title.

= 1.3.364 =
* Demotes an immediate first-child theme entry H1 when a Help4 Builder layout owns the page H1, while preserving ordinary non-Builder pages.

= 1.3.363 =
* Cleared actionable Plugin Check escaping and translation findings in Event, SEO, Collection, Calendar, and Staff Directory surfaces.
* Retains the Builder-owned H1 guard for bare theme entry titles while preserving ordinary non-Builder pages.

= 1.3.362 =

* Extend Builder H1 ownership to common bare theme/article entry titles that appear before a Builder-owned hero H1, while preserving ordinary non-Builder page titles.

= 1.3.361 =

* Add stable native event detail URLs and link Calendar cards to one factual leaf page per visible event.
* Add event status, timezone, venue address, ticket, and offer controls while preserving source-owned dates and upstream calendar data.
* Emit Event structured data only on complete single-event leaf pages; calendar and list views remain navigation surfaces.
* Add a filterable Course ItemList contract that requires at least three visible, unique, factual curriculum records.
* Prevent a theme site-title H1 from duplicating a Builder hero or slider H1 while leaving ordinary non-Builder pages unchanged.
* Add a bounded same-site organic landing audit for redirect, PDF-only, HTTP-error, and missing-description findings plus accessible PDF attachment metadata and preferred HTML landing URLs.

= 1.3.360 =
* Adds factual Event and Course schema fields, Staff Directory Person graphs, current FAQ eligibility guidance, consent-aware conversion hooks, and opt-in first-party RUM compatibility.

= 1.3.359 =
* Adds a first-class Staff Directory workspace with protected owner records, staff lifecycle controls, tier ordering, responsive portraits, accessible profile editing, recovery, and native Builder output.

= 1.3.358 =
* Adds the first-party Calendar Workspace with source health, synchronization diagnostics, local events, non-destructive visibility/content overrides, search, filters, recovery, and focused editing.
* Adds a native Calendar Builder element with calendar/list presentation, source selection, search/filter controls, responsive preview, and accessible empty/result states.

= 1.3.357 =
* Adds inline Collection field validation, reusable program/directory/event presets, and safer save feedback for staff workflows.
* Keeps staff controls discoverable at compact widths without changing public visual styling.

= 1.3.356 =
* Adds a first-class Data View / Collection element with staff-editable, reorderable items and named filters.
* Adds accessible grid/list switching, text search, empty-state messaging, live result counts, and responsive columns without custom HTML or JavaScript.
* Makes element-library tiles keyboard operable and restores reliable click-to-insert behavior alongside drag and drop.

= 1.3.355 =
* Makes page publication status, Add Element, Preview, and Save Changes visible in the main Builder command bar.
* Adds Ctrl/Cmd+S saving and Ctrl/Cmd+D element duplication while preserving text-field shortcuts.
* Adds one-click element duplication directly on the live canvas and keeps destructive deletion confirmed.
* Gives compact laptop widths a collapsible library drawer so the canvas keeps the available workspace.
* Corrects misleading element-save language so draft pages are never described as published.
* Adds bounded undo/redo history to the visual layered slider, including field, media, layer, slide, drag, and keyboard changes.

= 1.3.354 =
* Added an opt-in, product-wide wp-admin workspace system for staff-facing editors, calendars, queues, search/filter command bars, accessible status, and responsive collection rows.
* Added implementation guidance for calendar and operational workflows without changing existing screens by default.

= 1.3.353 =

* Preserve the verified 1.3.350 responsive Studio workspace and compact mobile drawer while adding support for Cloudflare's exact official always-pass Turnstile site/secret pair.
* Accept a successful Siteverify response with provider test placeholders only for that exact pair; production credentials, mixed credentials, and failed responses remain strict.

= 1.3.350 =

* Sanitize the per-form CAPTCHA mode before validation so the public package passes WordPress input-sanitization checks without changing saved behavior.
* Version the optional Turnstile service script and document the narrowly scoped external-service exception beside its enqueue call.
* Preserve the responsive Builder drawer, expanded Slider workspace, and optional disabled-by-default Turnstile controls from the preceding candidates.

= 1.3.349 =

* Turn the tablet/mobile Builder library into a full-height overlay drawer so it no longer creates a massive second row beneath the canvas.
* Collapse the responsive library by default for new users and keep its 44-pixel launcher visible at the lower-left while the canvas remains full-width.
* Keep the compact More Builder Tools menu dismissible from the signed frontend preview document as well as the parent Studio workspace.
* Preserve the optional Turnstile form protection from 1.3.348 and the expanded Builder/Slider workspaces from 1.3.347.

= 1.3.348 =

* Add optional, site-scoped Cloudflare Turnstile protection to native forms with an explicit disabled default and per-form inherit/disable/require controls.
* Validate short-lived tokens server-side across native POST, AJAX, and REST without exposing or storing secrets or response tokens; return accessible retry and temporary-outage states.
* Preserve honeypot and minimum-submit-time protection, no-CAPTCHA non-JavaScript handling, and a migration-safe fallback when Turnstile credentials are incomplete.
* Add responsive labeled widget markup, non-JavaScript guidance, focused AJAX status/error announcements, write-only secret management, and multisite-isolated settings.

= 1.3.347 =

* Reclaim Builder Studio canvas width whenever the inspector is empty, remember the collapsed element library, and add a persistent focus-canvas mode that hides nonessential workspace chrome.
* Group secondary Studio actions into an accessible More Builder Tools menu and collapse Performance Coach details by default so common editing controls no longer crowd the top bar.
* Add a full-screen Slider workspace and independently collapsible slide/layer settings, with Escape restoration and media-dialog-safe stacking.
* Make the Slider adapt to the actual WordPress editor column width instead of only the browser viewport, preventing the visual canvas from being squeezed beside settings and removing the mobile toolbar's empty 420-pixel gap.

= 1.3.346 =

* Replace the Slider JSON-only workflow with an approachable visual canvas while keeping the synchronized JSON contract available for existing sliders and migrations.
* Add slide duplication/reordering, drag positioning, direct resize, layer ordering, media selection, per-device position/typography/visibility, background fit/overlay controls, timing controls, and reduced-motion-safe entrance previews.
* Harden the public carousel with first-slide no-JavaScript output, user-controlled pause/play, interaction/focus/hover/document/out-of-view pausing, user-only slide announcements, inert hidden slides, keyboard arrows, swipe, and responsive per-slide timing.
* Raise carousel controls to accessible target sizes, provide high-contrast/focus design hooks, and add editor contrast guidance and decorative-background alternative-text defaults.

= 1.3.344 =

* Make a single click on a visible draft-preview element select its Builder block and open the correct inspector controls.
* Add guarded image, heading, text, and link editing inside migrated HTML blocks without flattening nested markup or changing unrelated page code.
* Keep an active unsaved migrated-item edit visible when the signed preview document reloads or the editor changes viewport.
* Add a short narrated first-change lesson, four current visual steps, and direct Quick Help routes for replacing an image, editing text, publishing, and checking the public page.
* Verify beginner layout templates preserve the site's saved global colors and semantic button styles instead of applying an unrelated default accent.
* Validate tutorial-media releases against the active packaged lesson catalog so new reviewed lessons can be published without a stale fixed-count gate.

= 1.3.343 =

* Defer canonical, robots, Open Graph, X/Twitter, and core schema output to Yoast SEO when it is active, preventing duplicate and conflicting head metadata.
* Keep Builder-specific site-verification tags and singular-page FAQ schema available alongside the active SEO provider.

= 1.3.342 =

* Add complete translator context to the searchable Builder Studio Quick Help result-count strings so standard and experimental WordPress Plugin Check both pass cleanly.
* Preserve the twenty-four searchable task guides, forty-eight narrated lessons, current visual walkthrough, responsive behavior, and keyboard interaction from 1.3.341.

= 1.3.341 =

* Source the public tutorial hub's narrated-lesson total from the packaged video catalog so documentation counts stay accurate as lessons are added.
* Correct the visible tutorial summary from thirty-six to forty-eight narrated lessons while preserving the searchable twenty-four-task Studio Quick Help release.

= 1.3.340 =

* Make Builder Studio Quick Help searchable across twenty-four plain-language task guides, with multi-word matching, live result counts, a clear control, and a useful no-results state.
* Add direct guidance for sections and containers, Navigator and layers, Site Kits, global styles and theme packs, and advanced custom CSS while giving every Quick Help route its own recognizable icon.
* Preserve keyboard focus, Escape and outside-click dismissal, guide activation, and responsive containment, and refresh the public Quick Help visual walkthrough with the current interface.

= 1.3.339 =

* Add four visual task guides for beginner templates, first campaign setup, campaign reports and drip automations, and Builder Studio Quick Help.
* Expand the searchable tutorial center to sixty guides with current 1440 by 900 product captures, visible FAQ content, FAQ schema, focus-keyphrase metadata, and LLM discovery priority for the new learning paths.
* Point Studio template and email-marketing help to the new task-level walkthroughs and expand Quick Help to nineteen direct guides while preserving keyboard, outside-click, Escape, and responsive behavior.

= 1.3.338 =

* Add a keyboard-accessible Quick Help menu to Builder Studio with fifteen task guides for first-page setup, editing, responsive design, templates, navigation, media, forms, dynamic data, commerce, SEO, accessibility, recovery, publishing, and troubleshooting.
* Place contextual responsive and performance guides beside their Studio controls, and add related first-page, mobile, template, recovery, and publishing help inside the inspector workflow.
* Keep the documentation catalog filterable for add-ons, normalize contributed Quick Help entries, close the menu on outside click, Escape, or guide activation, and preserve visible keyboard focus across desktop and mobile Studio layouts.

= 1.3.337 =

* Add nineteen beginner-friendly native Builder templates for heroes, introductions, features, services, stats, testimonials, pricing, FAQ, contact, calls to action, galleries, teams, complete business and coming-soon pages, headers, footers, and 404 recovery.
* Keep every starter fully editable with ninety-one native blocks, valid parent/slot graphs, responsive tablet/mobile columns, gaps, gutters, semantic complete-page headings, and safe Insert, drag, and Replace Page workflows.
* Recommend basic layouts from page title, template role, scope, and canvas context, and resolve {site}, {brand}, and automatic {year} tokens in Builder text blocks.

= 1.3.336 =

* Add self-hosted email campaigns, reusable templates, dynamic segments, bounded recipient snapshots, daily send caps, transient retries, pause/resume/cancel controls, and three-step welcome or drip automations.
* Require consent and double opt-in for public signups, share suppression state with the existing Forms newsletter flow, and provide signed confirmation, RFC 8058 one-click unsubscribe, privacy export/erasure, and suggested privacy-policy text.
* Add optional first-party open/click reporting with signed URLs, scanner classification, click-to-open reporting, plain-text fallbacks, responsive branded email output, and List-Unsubscribe headers without storing raw subscriber addresses or IPs in engagement events.
* Load the shared form styles for standalone Forms and email-signup shortcodes, correct field and consent-control sizing, hide honeypots from visual and accessibility layouts, and contain wide campaign tables on mobile admin screens.

= 1.3.335 =

* Keep a single valid Access-Control-Allow-Origin response for same-site tutorial videos by letting CDN-backed production own that edge header while beta emits it at origin.
* Preserve the WordPress uploads destination, all forty-eight reviewed media hashes, byte-range delivery, immutable caching, captions, transcripts, posters, and tutorial content from 1.3.334.

= 1.3.334 =

* Publish the checksum-verified tutorial video library beneath WordPress's public uploads directory so cloned, cPanel, subdirectory, and alternate-document-root installs expose the same files PHP verified.
* Keep the existing 48-lesson catalog, individual media hashes, byte-range policy, captions, transcripts, posters, and managed tutorial content unchanged.

= 1.3.333 =

* Expand the natural-voice Builder library from thirty-six to forty-eight lessons, the searchable written knowledge center from fifty-five to fifty-six guides, and the current guided screenshot set from forty-eight to sixty captures.
* Add complete walkthroughs for sales homepages, five-plan pricing, accessible FAQ schema, widget favorites and addons, repeaters and relationships, commerce operations, form delivery diagnostics, multisite, Google Business proof, security recovery, cache performance, and accessibility audits.
* Keep posters, synchronized captions, and complete transcripts in the plugin while serving checksum-verified, range-capable videos from the site's own stable media library through an administrator-only release path.
* Give Help4 Field Groups complete WordPress labels and contain the Google Business location mapping table on standard admin viewports.
* Connect the accessibility audit and the new advanced workflows to contextual in-plugin help, searchable guide cards, structured video metadata, and the bounded AI discovery catalog.

= 1.3.332 =

* Expand the natural-voice Builder library from twenty-four to thirty-six lessons and the current guided screenshot set from thirty-five to forty-eight captures.
* Add narrated workflows for live preview and responsive viewports, Navigator and reusable layers, scoped custom CSS, redirects and 404 monitoring, site search, mega menus, LMS surfaces, Website Snapshot, Help4 Blank setup, migrations, module diagnostics, and launch recovery.
* Surface Website Snapshot as a first-class searchable Builder widget and connect advanced Builder contexts directly to their matching written guide and video anchor.
* Make Monitors, Tablets, Mobiles, and TV open on practical default presets instead of retaining a preset from another group or selecting an extreme first option.
* Keep the complete lesson hub lazily hydrated, package synchronized captions and written transcripts, and retain no-JavaScript video downloads.

= 1.3.331 =

* Lazy-hydrate the complete tutorial library so off-screen lessons do not request twenty-four posters, videos, and caption tracks during first paint.
* Hydrate lessons through viewport proximity, keyboard focus, pointer hover, or touch while preserving direct no-JavaScript video downloads and immediate playback on individual guide pages.
* Add live browser coverage that caps the initial tutorial-media request burst and verifies all twenty-four lazy lesson players across desktop, tablet, and mobile.

= 1.3.330 =

* Expand the narrated Builder library from twelve to twenty-four lessons with advanced walkthroughs for global styles, theme conditions, dynamic data, sliders, HLS video fallbacks, SEO, local SEO, IndexNow, commerce, newsletters, performance, security, updates, Insights, and I.G.O.R. diagnostics.
* Package thirty-five current privacy-safe Builder screenshots and ninety-six synchronized lesson assets: twenty-four streaming-optimized videos, posters, caption tracks, and complete written transcripts.
* Link the relevant Builder, commerce, SEO, newsletter, security, performance, and diagnostics controls directly to their matching lesson anchors.
* Fix Commerce customer and field admin routes to use the supported non-negative query accessor, preventing a PHP fatal when those screens open.
* Verify every narration locally, retain the searchable 55-guide knowledge center, and exercise eighteen tutorial routes at four responsive viewports.

= 1.3.329 =

* Prioritize the buttons, menus, forms, SEO, and native commerce walkthroughs in the bounded llms.txt discovery catalog.
* Keep the twelve naturally narrated lessons, twenty-one current screenshots, synchronized captions, complete transcripts, contextual lesson links, and responsive verification from 1.3.328.


Complete prior release history: https://help4wordpress.com/help4-builder-suite/changelog.txt
