All Products

Changelogs

Every published release across Gatilab plugins and themes, newest first.

Showing 109–120 of 393 releases

Stable

GT Extensions for FluentCart2.1.0

Automatically selects an enabled local currency when checkout loads.

Read full notesHide notes

Local currency at checkout

  • Automatically selects an enabled local currency when checkout loads.
  • Resolves location from billing country, shipping country, then Cloudflare visitor country.
  • Reprices the full cart in the configured default currency when the local currency is disabled or cannot price every item.
  • Preserves manual customer currency choices and refreshes automatic choices when checkout country changes.
  • Keeps checkout display, gateway routing, REST hydration, cart state, and order currency synchronized.
Stable

GT Extensions for FluentCart2.0.0

GT Extensions for FluentCart 2.0.0 replaces the old per-variation currency label with a complete multi-currency checkout system.

  • Changes 7
Read full notesHide notes

GT Extensions for FluentCart 2.0.0 replaces the old per-variation currency label with a complete multi-currency checkout system.

Highlights:

  • One authoritative currency per cart, order, transaction, and subscription.
  • Exact per-variation price books with manual or Frankfurter exchange-rate fallback.
  • Currency-to-payment-gateway routing with preferred gateways and server-side validation.
  • Server-side cart repricing for items, fixed coupons, shipping, fees, and signup amounts.
  • Storefront currency selector and [gtfc_currency_selector] shortcode.
  • FluentCart product-editor controls for exact local prices.
  • Redesigned responsive settings, diagnostics, rate markup, rounding, and missing-price behavior.

Multi-currency checkout requires FluentCart 1.5.5 or newer. Version 2.0.0 is designed for two-decimal currencies; test zero-decimal currencies separately before production use.

Stable

Dynamic Month & Year into Posts1.8.0

Added: Recurring, cache-aware Live Countdown block with leap-day handling and Block Bindings presets.

  • What's Changed 7
Read full notesHide notes

What's Changed

  • Added: Recurring, cache-aware Live Countdown block with leap-day handling and Block Bindings presets.
  • Improved: All date calculations now use the WordPress site timezone and calendar-day arithmetic across daylight-saving changes.
  • Improved: Searchable shortcode picker, block previews, toolbar accessibility, responsive editor controls and theme-neutral patterns.
  • Improved: Shortcode processing in titles, excerpts and supported integrations is limited to this plugin's tags.
  • Fixed: Countdown Interactivity API code now ships as a JavaScript module.
  • Changed: Minimum supported WordPress version is 6.5.
  • Changed: Removed duplicate legacy runtime files and consolidated rendering around one date engine.

Commits

  • Release 1.8.0 (1f27f44)
  • Prepare 1.8.0-beta (47a2613)
  • Fix WordPress.org release tag version (38662fe)
Stable

Core Forms4.4.3

Send Email, Auto-Responder, and Emailit action cards now show variables for the current form fields on the Actions tab.

  • Fixed 3
Read full notesHide notes

Fixed

  • Send Email, Auto-Responder, and Emailit action cards now show variables for the current form fields on the Actions tab.
  • Field variables are rendered server-side instead of depending on Fields-tab JavaScript.
  • Added regression coverage for named, array, duplicate, and internal field handling.
Stable

GT ACF Blocks Plugin2.9.0

Replaced request-time block and field-group discovery with a generated OPcache-friendly manifest.

  • Performance 7
  • Added 4
  • Fixed 3
Read full notesHide notes

What's Changed

Performance

  • Replaced request-time block and field-group discovery with a generated OPcache-friendly manifest.
  • Consolidated editor styles into one cacheable bundle, with site-specific bundles that exclude blocks disabled through Block Manager.
  • Removed the TOC block's full-post do_blocks() re-render and moved its runtime CSS/JavaScript to conditional assets.
  • Moved external-image downloads and thumbnail generation out of post saves into a bounded WP-Cron queue.
  • Changed migration and recovery scans from unbounded all-post queries to resumable keyset batches, including an optional background migration worker.
  • Added request-level image attachment lookup caching, post cache priming, bounded URL-preview responses, and contextual module loading.
  • Moved callout, feature-grid, post-display, checklist, changelog, and pros/cons variation styling into cacheable stylesheets or CSS custom properties.

Added

  • Block Manager for disabling unused block registrations and field groups.
  • Asynchronous block usage inventory, job status, and performance diagnostics.
  • Optional Server-Timing metrics in debug environments.
  • Generated-artifact checks, PHP 7.4-8.5 compatibility CI, JSON validation, and PHPUnit coverage.

Fixed

  • Replaced PHP 8-only str_ends_with() calls while retaining the advertised PHP 7.4 minimum.
  • Reworked public star ratings to use atomic database tables and a REST endpoint, preventing lost concurrent votes and transient-option growth.
  • Made URL Preview editor code cacheable and limited remote HTML responses to 1 MB.

Commits

  • Release 2.9.0 performance overhaul (5503112)

Stats

  • Commits: 1
  • Changes: 48 files changed, 12640 insertions(+), 1356 deletions(-)

Plugin Info

  • Blocks included: 29
  • Requires WordPress: 6.0+
  • Requires PHP: 7.4+
  • Requires: ACF Pro 6.0+ or Secure Custom Fields

Installation

  1. Download acf-blocks-plugin-*.zip from the assets below
  2. Go to Plugins → Add New → Upload Plugin in WordPress admin
  3. Upload the zip file and activate
Stable

Core Forms4.4.2

See CHANGELOG.md for the full release history.

  • Security 3
  • Fixed 3
Read full notesHide notes

Security

  • Enforces the 254-character email limit and each field's declared maxlength on the server.
  • Rejects nested form values and encoded submission metadata above 60 KiB before hooks, storage, or notifications.
  • Keeps uploaded file bytes outside that metadata ceiling; upload size remains controlled by the field and PHP limits.

Fixed

  • Restores single and multiple multipart file uploads by normalizing PHP's $_FILES data into the submission pipeline.
  • Prevents invalid and spam submissions from moving files or persisting temporary upload paths.
  • Fixes per-form rate-limit settings, hourly expiry, and AJAX error visibility.

See CHANGELOG.md for the full release history.

Stable

Core Forms4.4.1

Fixed the Gutenberg Core Form block preview taking about 60 seconds to load on busy editor screens by replacing the generic WordPress server-render request with a focused Core Forms preview endpoint, a summary-only form selector, and shared…

  • Fixed 1
Read full notesHide notes

Fixed

  • Fixed the Gutenberg Core Form block preview taking about 60 seconds to load on busy editor screens by replacing the generic WordPress server-render request with a focused Core Forms preview endpoint, a summary-only form selector, and shared request caching.
Stable

Core Forms4.4.0

Core Forms 4.4.0 includes the complete feature set originally planned for roadmap versions 4.4 and 4.5.

  • Added 12
  • Changed 10
  • Fixed 7
  • Security 4
Read full notesHide notes

Core Forms 4.4.0 includes the complete feature set originally planned for roadmap versions 4.4 and 4.5.

Added

  • Added inline Stripe Payment Element checkout with server-owned product pricing, idempotent PaymentIntent creation, and signed webhook confirmation.
  • Added first-class Razorpay hosted checkout with payment-link, captured-payment, failure, cancellation, and refund handling.
  • Added one-click importers for Ninja Forms and Formidable Forms alongside the existing CF7, Gravity Forms, WPForms, and Fluent Forms migration tools.
  • Added WP-CLI commands for form import/export/listing, submission maintenance, product and plan administration, license reporting, order reporting, and expiry maintenance.
  • Added native actions for WooCommerce, Easy Digital Downloads, SureCart, WP Simple Pay, MemberPress, LearnDash, Paid Memberships Pro, Groundhogg, Jetpack CRM, WP-CRM System, and SureContact.
  • Added AutomatorWP, Uncanny Automator, and OttoKit triggers and actions with form and submission payloads.
  • Added signed inbound WhatsApp webhooks for Meta Cloud API and Twilio, including reply correlation and delivery-state history in submission conversations.
  • Added a multi-product licensing and lightweight ecommerce system with products, plans, orders, subscriptions, customer accounts, activation limits, refunds, renewals, and audited signed downloads.
  • Added a dedicated customer dashboard for orders, masked/revealable keys, product downloads, activated sites, and subscription controls.
  • Added free, Stripe, Razorpay, and renewal license-form templates with complete payment and fulfillment actions.
  • Added a default Sample Product with free, USD annual, and INR annual plans on new and upgraded sites.
  • Added native Bricks and Elementor integrations plus a per-form WCAG 2.2 audit and conservative one-click repairs.

Changed

  • The form editor now renders only the active tab instead of executing every tab's PHP, JavaScript, analytics, and REST requests on every page load.
  • The visual builder now boots from server-rendered form and schema data, removing its two blocking initial REST requests.
  • Builder saves now persist markup and schema atomically through one endpoint with a bounded timeout and a standard form-post fallback.
  • Tab-specific saves merge with existing form settings, preserving payment and action configuration when saving Fields, Messages, or other individual tabs.
  • Licensing actions are always visible under a dedicated Commerce & Licensing category instead of disappearing when the public activation API is disabled.
  • Product and plan slugs are generated automatically, normalized, and made unique; manually entered slugs remain supported.
  • Plan prices are entered in customer-facing major units such as 49.00 instead of minor units such as 4900.
  • Product packages use the WordPress Media Library picker and uploader instead of requiring an attachment ID.
  • The licensing backend now includes catalog statistics, quick-start guidance, direct Add plan/Add package links, and file names instead of raw attachment IDs.
  • The existing core-forms.com CF Licenser client, option keys, 32-character key format, six-hour heartbeat, and update hooks remain separate from and compatible with the new merchant licensing subsystem.

Fixed

  • Fixed the Fields builder remaining on an indefinite loading spinner when either initial REST request stalled.
  • Fixed inactive Analytics requests and form-builder assets loading on unrelated form tabs.
  • Fixed paid plans being fulfillable from a non-payment form or before verified payment confirmation.
  • Fixed payment fulfillment accepting a mismatched paid amount or currency when validation is enabled.
  • Fixed free plans being incorrectly coupled to a payment requirement.
  • Fixed action-variable references showing a permanent Loading message when the Fields builder was not present.
  • Fixed stale admin asset caches by versioning the main admin stylesheet and licensing script from their file modification times while keeping the plugin version at 4.4.0.

Security

  • License fulfillment is idempotent per submission and product selection, preventing duplicate orders or keys during webhook retries.
  • Signed package links expire, verify the stored SHA-256 digest before streaming, and record downloads in an audit table.
  • Verified refunds disable issued licenses and cancel related subscriptions.
  • Inbound messaging and payment webhooks require provider signatures before they can change submission, payment, or fulfillment state.
Stable

GT ACF Blocks Plugin2.8.1

Batched migration: the Migrator now processes 30 posts per run with a Continue — Migrate Next 30 button and a progress bar, instead of one large request — friendlier on big sites and PHP time limits.

Read full notesHide notes

What's Changed

Added — Migrator improvements

  • Batched migration: the Migrator now processes 30 posts per run with a Continue — Migrate Next 30 button and a progress bar, instead of one large request — friendlier on big sites and PHP time limits.
  • Affected-post visibility: Scan now lists every affected post (title, status, edit/view links) with colour-coded badges showing exactly what will change; each migration batch shows the same per-post detail for what it just changed.
  • New repair — legacy accordion field schema: acf/accordion blocks whose data used the old acf_accord_heading / acf_accord_content sub-fields (which render blank on the current template) are remapped in place to acf_accord_group_title / acf_accord_group_content, preserving FAQ schema and classes. This is the cause behind blank FAQ sections on older posts.
  • Restore points across batches: revert now covers the whole multi-batch session, and a new Discard restore points action clears backups without changing migrated content. WP-CLI: wp acf-blocks migrate [--limit=<n>] [--dry-run] [--revert] [--discard].

Commits

  • 2.8.1: batched migrator, affected-post visibility, accordion field-schema fix (4a845ab)

Stats

  • Commits: 1
  • Changes: 3 files changed, 460 insertions(+), 138 deletions(-)

Plugin Info

  • Blocks included: 29
  • Requires WordPress: 6.0+
  • Requires PHP: 7.4+
  • Requires: ACF Pro 6.0+ or Secure Custom Fields

Installation

  1. Download acf-blocks-plugin-*.zip from the assets below
  2. Go to Plugins → Add New → Upload Plugin in WordPress admin
  3. Upload the zip file and activate
Stable

GT ACF Blocks Plugin2.8.0

Block recovery (all InnerBlocks blocks): Resolved the "This block contains unexpected or invalid content" / Attempt Recovery error that emptied ACF InnerBlocks blocks (Callout, CTA, Hero, Section, Feature Grid, Testimonial, Team Member…

  • Fixed 1
  • Added 4
Read full notesHide notes

What's Changed

Fixed

  • Block recovery (all InnerBlocks blocks): Resolved the "This block contains unexpected or invalid content" / Attempt Recovery error that emptied ACF InnerBlocks blocks (Callout, CTA, Hero, Section, Feature Grid, Testimonial, Team Member, Opinion Box, …). The cause was inner content saved as undelimited raw HTML (e.g. a bare <p> instead of <!-- wp:paragraph -->), which the editor treats as invalid InnerBlocks markup. Clicking Attempt Recovery then rebuilt the block from its template default, wiping the author's content.

Added

  • includes/block-recovery.php — a self-healing helper that re-wraps orphaned inner HTML into proper core blocks (paragraph, heading, list, quote; anything unrecognised is preserved verbatim in a core/html block, so no content is ever lost). It is idempotent and runs in two ways:
  • Live self-heal: filters the block editor's REST content.raw (edit context only) so existing posts open cleanly with no action required; saving then persists the repaired markup.
  • Permanent bulk repair: wp acf-blocks repair-content [--dry-run] [--post=<id>] rewrites affected posts in the database.
  • The InnerBlocks block set is derived automatically — unioning each block.json (supports.jsx) with the live block registry (ACF can enable InnerBlocks at runtime without declaring it in block.json) — with a acf_blocks_recovery_innerblock_names filter to customise it.

Added — Block Migrator

  • includes/block-migrator.php + visual Migrator on the options page (Settings → ACF Blocks License). A new Block Migrator & Repair card with Scan, Dry Run, and Migrate All actions. Every change is saved through wp_update_post() (a revision is stored), so migrations are reversible. WP-CLI parity: wp acf-blocks migrate [--dry-run].
  • Reversible migrations — before each post is migrated, its original content is snapshotted both as a native WordPress revision (visible in the editor's Revisions browser) and as a per-post restore point. A Revert Last Migration button (and wp acf-blocks migrate --revert) rolls the entire batch back to its pre-migration content, byte-for-byte, independent of the site's revision settings.
  • Legacy / renamed block migrations — blocks saved under names the plugin no longer registers are remapped to the current block with field-data translation, not just renamed:
  • acf/table-of-contents, acf/table-of-content → acf/toc
  • acf/productbox → acf/product-box (incl. the legacy features repeater)
  • acf/accordion-item → acf/accordion (consecutive items merged into one block)
  • acf/accordion-group → acf/accordion (wrapper + children merged, FAQ schema preserved)
  • acf/acf-accordion → acf/accordion (acc_question/acc_answer sub-fields remapped)
  • acf/poll has no current equivalent — reported and left untouched for manual handling.
  • Unparseable-markup repair — fixes content the block parser chokes on:
  • Orphaned closing delimiters (e.g. a stray <!-- /wp:post-content --> with no opener) that silently push every following block into freeform text. Removed with a delimiter stack so only genuinely unmatched closers are stripped.
  • Dangling openers (a truncated <!-- wp:… fragment with no -->).
  • Literal --> inside ACF block JSON, HTML-encoded to --> (identical when rendered).

Compatibility

  • WordPress 7.0: Added Tested up to: 7.0 header. Audited for WordPress 7 / ACF Pro 6.x — all 29 blocks already use Block API v3, register via block.json (no deprecated acf_register_block_type), retain the ACF 6.7+ acf_setup_meta compatibility layer, and contain no PHP 8.2–8.5 deprecation patterns (verified against PHP 8.5).

Commits

  • Release 2.8.0: block recovery + migrator with reversible migrations (fc6bc7d)

Stats

  • Commits: 1
  • Changes: 5 files changed, 1684 insertions(+), 2 deletions(-)

Plugin Info

  • Blocks included: 29
  • Requires WordPress: 6.0+
  • Requires PHP: 7.4+
  • Requires: ACF Pro 6.0+ or Secure Custom Fields

Installation

  1. Download acf-blocks-plugin-*.zip from the assets below
  2. Go to Plugins → Add New → Upload Plugin in WordPress admin
  3. Upload the zip file and activate
Stable

GT Page Blocks Builder2.6.0

Library blocks can be assigned to theme regions — header, hero, before/after content, sidebar, footer, 404 — and rendered by any theme via gt_pb_region( 'header' ) / gt_pb_has_region(). A blank hybrid theme can be little more than region…

Read full notesHide notes

What's Changed

Theme building

  • Library blocks can be assigned to theme regions — header, hero, before/after content, sidebar, footer, 404 — and rendered by any theme via gt_pb_region( 'header' ) / gt_pb_has_region(). A blank hybrid theme can be little more than region calls.
  • Hook positions now actually render: wp_head, wp_body_open, wp_footer, loop_start/loop_end, get_header/footer/sidebar, and before/after the content — priority-ordered.

Block rename + migration

  • The block is now gt-page-block/page-block (category: Page Blocks). The legacy marketers-delight/page-block stays registered (hidden from the inserter) so existing content keeps rendering, with a one-click transform to the new block.
  • Migration tool: Settings → Tools → Migrate blocks (with dry run), or WP-CLI wp gt-pb migrate-blocks [--dry-run] — rewrites stored content without touching post modified dates.

REST API (pbb/v1)

  • GET/POST /blocks, GET/PUT/DELETE /blocks/<id> (trash or ?force=true), POST /blocks/<id>/duplicate, GET /blocks/<id>/render — search, status filtering, pagination, and status-count headers. Read = edit_posts, write = manage_options.

Library admin panel

  • New card-grid library with lazy live-preview thumbnails, search, status filter tabs, duplicate / trash / restore / delete-forever, copy-shortcode, and position chips. Classic list table remains at ?view=list.

Block editor

  • Preview-first Page Block: rendered live preview (auto-sizing iframe with theme styles) by default; Preview/Code toggles in the block toolbar.
  • Responsive viewport presets (desktop / 768px / 390px) + dark-scheme preview toggle.
  • Collapsible live preview pane under the CodeMirror editor — server-rendered when PHP/wpautop is enabled.
  • Copy button, Save to library, and a Browse library modal to insert saved blocks.
Stable

Core Forms4.3.8

New - Field names accept uppercase. The builder's Name field no longer force-lowercases input (HTML `name`/`id` are case-sensitive). Illegal characters are still sanitized. - Textarea options: Rows (height), Resize behaviour (default /…

Read full notesHide notes

Core Forms 4.3.8

New - Field names accept uppercase. The builder's Name field no longer force-lowercases input (HTML `name`/`id` are case-sensitive). Illegal characters are still sanitized. - Textarea options: Rows (height), Resize behaviour (default / vertical / horizontal / both / none), and a live character counter that shows "used / limit" when a Max length is set. An explicit Rows value now wins over the 5-line default height. - Phone (tel) value limits: new Min length, Max length, and Pattern controls to constrain accepted values.

Fixed - The builder's HTML generator silently dropped textarea min/max-length and conditional-logic attributes on save, so those validations were lost. The textarea output now matches the server-side renderer.