=== Squad Modules Lite – Free Divi 5 & Divi 4 Modules for Divi Builder ===
Contributors: wpsquad, mralaminahamed
Donate link: https://squadmodules.com/
Tags: divi, divi 5, divi builder, divi modules, divi addons
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 5.0.0
License: GPL-3.0-only
License URI: https://www.gnu.org/licenses/gpl-3.0.en.html

67 free Divi modules + 8 extensions — the largest free Divi library, all native in the Divi 5 Visual Builder and Divi 4. Nothing to migrate.

== Description ==

**Squad Modules Lite** is the most complete free Divi module pack built for **Divi 5**. It adds **67 free modules and 8 extensions** — all 67 run *natively* inside the Divi 5 Visual Builder (Block API), and all 67 also run in the classic Divi 4 builder. Install once, build in either version — your existing pages keep working and new ones get the full Divi 5 experience.

[View all modules →](https://squadmodules.com/modules?utm_campaign=wporg&utm_source=squadmoduleslite&utm_medium=textlink) | [Upgrade to Pro](https://squadmodules.com/pricing?utm_campaign=wporg&utm_source=squadmoduleslite&utm_medium=textlink)

Trusted by Divi builders worldwide and actively maintained — with frequent security patches, new modules, and fast compatibility updates for new Divi releases. The free library now spans 67 modules — more than any other free Divi pack — and every one of them runs in both the Divi 5 Visual Builder and the classic Divi 4 builder.

**Why Squad Modules?**

- **Truly Divi 5 native — all 67 modules** — every single module is a first-class Block API citizen with full Visual Builder support, live preview, and design controls. Not a handful of modules, not "static modules only" — the entire library runs natively in Divi 5.
- **The largest free module library** — 67 free modules across 6 categories, more than any other free Divi module pack, with no feature paywalls on the free set.
- **Free where other packs charge** — Countdown Timer, Timeline, Data / Comparison Table, Charts, Floating Chat Button, Reading Progress Bar, Image Hotspots, Image Accordion, Step Flow, Text Effects, and Comparison List are Pro-only in most Divi add-ons. Squad ships all eleven free, with no paywall.
- **Divi 4 supported, zero migration** — all 67 modules also run in the classic Divi 4 builder. Pages built in Divi 4 stay in Divi 4; new Divi 5 pages use the native modules. No migration, no broken layouts, no conversion step.
- **8 free extensions** — site-wide helpers that aren't modules: post duplication, Divi Library shortcodes, login-page branding, font/SVG/JSON uploads, and more.
- **Per-module asset loading — zero bloat** — CSS and JavaScript load per module, only on the pages where a module is actually used. Disable a module and it adds **zero CSS and zero JavaScript** to your site. No single global bundle loaded on every page — Squad loads only what a page uses, so Core Web Vitals stay clean.
- **Accessibility-minded** — interactive modules ship keyboard navigation, ARIA roles, and focus management (Advanced Tabs, Image Accordion, Image Hotspots, Before/After Slider, and more), so your layouts stay usable for keyboard and screen-reader visitors.
- **Form stylers for 11 plugins** — natively style Contact Form 7, WPForms, Gravity Forms, Ninja Forms, Fluent Forms, Forminator, Formidable, SureForms, Everest Forms, Happyforms and weForms — no custom CSS.
- **Maintained and secure** — frequent security patches, Divi compatibility updates, and new modules. WPML-ready and translation-ready out of the box.

**How Squad Modules compares to other free Divi module packs:**

- **More modules, no paywall** — most free Divi packs ship around 20 modules and gate the popular ones (countdown, charts, timeline, chat button) behind Pro. Squad ships **67 free**, with none of them paywalled.
- **Every module native in Divi 5** — most packs advertise "Divi 5 support" for a subset of static modules. Squad runs **all 67 natively** in the Divi 5 Visual Builder via the Block API, with full live preview and design controls.
- **Loads only what a page uses** — most packs load one global bundle on every page. Squad loads assets **per module, on demand**, so pages stay light.
- **Divi 4 too, nothing to migrate** — all 67 modules also run in the classic Divi 4 builder; existing pages keep working.

**Switching from another pack?** Squad covers the most-used modules from popular free add-ons — team member, testimonial, pricing table, icon box, advanced tabs, flip box, before/after slider, dividers, typing text, gradient text, business hours, image carousel, Lottie, post grid, and the 11 form stylers — plus the modules those packs charge for: countdown timer, timeline, data/comparison table, charts, floating chat button, reading progress bar, image hotspots, image accordion, step flow, text effects, and comparison list.

---

**Creative Modules (22)**

- **Advanced Divider** — 16 divider styles: solid, double, dashed, dotted, groove, shadow, image, icon, text, gradient, Lottie, wave, zigzag, and more.
- **Dual Button** — two independent CTAs side by side, each with its own link, style, and icon.
- **Advanced Button** — single button with dual icon slots, hover overlay, and rich state controls.
- **Typing Text** — animated typewriter headline with configurable words, speed, color, and cursor.
- **Glitch Text** — RGB-split glitch animation for bold, striking headlines.
- **Gradient Text** — CSS gradient coloring for headings and paragraph text.
- **Scrolling Text** — marquee-style attention-grabbing ticker with custom speed and direction.
- **Star Rating** — half-star-precise rating display with custom star count, color, size, and text label for reviews, testimonials, and products.
- **Breadcrumbs** — schema-ready navigation trail so visitors always know where they are.
- **Table of Contents** — auto-generated, anchor-linked TOC from page headings with smooth scroll.
- **Number Counter** — animated count-up stat with prefix, suffix, icon, and image.
- **Text Highlighter** — hand-drawn SVG highlight/underline annotation on scroll.
- **Drop Cap Text** — oversized first-letter drop caps with custom size, color, font, and float for editorial-style opening paragraphs.
- **Inline Content** — mix text, icons, images, buttons, and dividers in a single flowing line.
- **Floating Images** — decorative images with CSS keyframe floating motion.
- **Animated Heading** — cycling headlines with fade, slide, or flip transitions.
- **Image Reveal** — clip-path or color-overlay image reveal on scroll.
- **Countdown Timer** — evergreen and fixed-date modes with on-expiry actions (hide, redirect, or show a message), timezone-aware, no external JS.
- **Charts** — Bar, Line, Pie, and Doughnut charts in one module (Chart.js), multi-dataset, animate-on-scroll, accessible canvas. The chart library loads only when a chart is on the page.
- **Floating Chat Button** — WhatsApp, Telegram, Messenger, phone, email, and custom deep links with online-hours scheduling and prefilled messages; GDPR-friendly with no third-party script.
- **Reading Progress Bar** — top/bottom bar or corner ring tracking the whole page or a specific content area, with color/gradient and hide-on-complete.
- **Text Effects** — trendy typography effects in one module: image-fill (masked) text, stroke/outline text, and animated gradient fill; extends the Gradient and Glitch text family.

**Image & Media Modules (11)**

- **Lottie** — lightweight JSON animations with playback controls, no extra JS libraries.
- **Image Mask** — apply CSS shape masks (blob, leaf, SVG geometry) to any image.
- **Before / After Slider** — drag-handle comparison slider for transformations and product shots.
- **Gallery** — filterable image gallery with masonry, grid, and lightbox layouts.
- **Image Carousel** — touch-friendly carousel with captions, autoplay, and lightbox.
- **Logo Carousel** — auto-scrolling client/brand logo slider with grayscale-to-color hover, per-logo links, autoplay, loop, and responsive slides-per-view.
- **Logo Grid** — tidy client/brand logo grid with configurable columns, grayscale-to-color hover, tooltips, and per-logo links.
- **Video Popup** — YouTube or Vimeo video inside a click-triggered lightbox.
- **Advanced Video** — styled video player with custom poster, overlay controls, and sticky dock.
- **Image Hotspots** — annotate any image with unlimited percentage-positioned pins, each with a tooltip, dot/icon/number marker, and hover or click trigger; keyboard-accessible.
- **Image Accordion** — horizontal or vertical expanding image panels with hover or click triggers, responsive collapse, and free-form nested content per panel; repeatable child items.

**Dynamic Content Modules (4)**

- **Post Grid** — filterable blog post grid with 16 element types, ACF/custom fields, pagination, and AJAX load more.
- **Post Carousel** — Swiper-powered post carousel with autoplay, loop, dots, arrows, and slide/fade/coverflow effects.
- **Author Box** — post author bio card with avatar, name, role, description, and social icons, in stacked or side-by-side layouts.
- **Post Reading Time** — estimated reading time displayed on any post or page type.

**Content Modules (15)**

- **Flip Box** — cards that flip on hover (rotate, slide, zoom, fade, open, diagonal) to reveal back content.
- **Hover Box** — image card with animated content overlay on hover.
- **Business Hours** — weekly schedule with per-day highlighting and a Closed state.
- **Skill Bar** — animated progress bars that fill on scroll with label and percentage.
- **Social Share** — share buttons for major social networks, server-rendered, CSS-only.
- **Google Embed Map** — fully styled Google Map embedded in any Divi layout.
- **Team Member** — team/staff cards with photo, role, bio, social links, and schema.org Person markup.
- **Testimonial** — customer reviews with avatar, rating, name/role, and schema.org Review markup.
- **Pricing Table** — responsive pricing plans with featured highlight, ribbon, tick/cross feature lists, and CTA buttons.
- **Icon Box** — blurb-style box pairing an icon, image, or Lottie animation with title, content, badge, and a clickable link.
- **Advanced Tabs** — tabbed content with horizontal/vertical layouts, mobile accordion, icon tabs, and URL deep-linking.
- **Timeline** — vertical or horizontal timeline with alternating or one-side layouts, scroll-triggered reveal, and icon/image/number markers; repeatable child items.
- **Data / Comparison Table** — responsive table (stack or scroll) with highlight column/row, sticky header, optional client-side sort, ribbon, and CSV-style paste; repeatable child rows.
- **Step Flow** — numbered process/how-it-works steps with icon, image, or number markers, vertical or horizontal orientation, connector styling, and scroll-triggered reveal; repeatable child steps.
- **Comparison List** — feature checklist with three per-row states (included, excluded, neutral), each state's icon set from a Divi icon picker plus color, responsive columns, row dividers and zebra rows, and free-form nested content per row; repeatable child rows. Completes the comparison trio with Pricing Table and Data Table.

**Form Styler Modules (11)**

Style every popular form plugin natively from the Divi builder — colors, fonts, spacing, borders, and focus states — with no custom CSS required.

- Contact Form 7
- WPForms
- Gravity Forms
- Ninja Forms
- Fluent Forms
- Forminator
- Formidable Forms
- SureForms
- Everest Forms
- Happyforms
- weForms

**Auth Modules (4)**

Replace the default WordPress login screens with fully branded, Divi-styled pages.

- **Login Form** — custom wp-login.php replacement with logo, colors, and redirects.
- **Register Form** — branded registration screen.
- **Lost Password Form** — styled lost-password screen matching your login page.
- **Reset Password Form** — password-reset form with strength meter and redirect.

---

**8 Free Extensions**

- **Copy Post or Page** — one-click duplication with multisite support.
- **Divi Library Shortcode** — insert saved Divi Library layouts anywhere via shortcode.
- **Custom Login Page** — style the entire wp-login.php experience from Divi.
- **Forgot Password** — lost-password page branded to match your custom login.
- **Reset Password** — password-reset page with strength meter.
- **Font Upload** — upload custom fonts through the WordPress media uploader.
- **JSON Upload** — import/export Divi layouts and settings in JSON format.
- **SVG Upload** — safely upload and serve scalable SVGs in WordPress.

---

**Upgrade to Squad Modules Pro**

Already shipping with 67 free modules — Pro adds **30+ premium modules and extensions** for advanced layouts and dynamic content, all with the same native Divi 5 + Divi 4 support. Flagship Pro modules include:

- **Advanced List** — build rich, fully-styled structured lists from any content, with repeatable items.
- **Advanced Blurb** — feature blocks with advanced icon, image, and badge styling (regular + fullwidth).
- **Advanced Heading** — multi-part headings with highlight, gradient, and per-segment styling.
- **Advanced Slider** — Swiper-powered content sliders with rich transitions and autoplay.
- **Accordion** — nested, collapsible content sections with custom icons and open/close states.
- **User List** — dynamic grids and lists of WordPress users with roles, avatars, and meta.
- **Taxonomy List** — display and navigate categories, tags, and custom taxonomies.
- **CPT Grid** — custom post type grids with load-more and current-loop inheritance.
- **Animated 3D Background** — eye-catching animated 3D backgrounds for hero and section design.

Plus priority email support and early access to new modules.

- [Browse all modules →](https://squadmodules.com/modules?utm_campaign=wporg&utm_source=squadmoduleslite&utm_medium=textlink)
- [Upgrade to Pro →](https://squadmodules.com/pricing?utm_campaign=wporg&utm_source=squadmoduleslite&utm_medium=textlink)

---

**Resources**

- [Documentation](https://squadmodules.com/docs?utm_campaign=wporg&utm_source=squadmoduleslite&utm_medium=textlink)
- [Submit a bug or feature request](https://github.com/thewpsquad/squad-modules-lite/issues?utm_campaign=wporg&utm_source=squadmoduleslite&utm_medium=textlink)
- [Full Changelog](https://squadmodules.com/changelog?utm_campaign=wporg&utm_source=squadmoduleslite&utm_medium=textlink)
- [Facebook Community](https://www.facebook.com/groups/squadmodules/?utm_campaign=wporg&utm_source=squadmoduleslite&utm_medium=textlink)

Squad Modules is built by [The WP Squad](https://squadmodules.com/?utm_campaign=wporg&utm_source=squadmoduleslite&utm_medium=textlink) — a dedicated WordPress product team based in Dhaka, Bangladesh.

If this plugin saves you time, please [leave a 5-star review](https://wordpress.org/support/plugin/squad-modules-for-divi/reviews/?rate=5#new-post) — it helps more Divi users find it.

= More from us =

Other free plugins by the same author, all on WordPress.org.

**For any site**

* [Swift Menu Duplicator](https://wordpress.org/plugins/swift-menu-duplicator/) - Duplicate menus in one click, snapshot revisions, export and import, WP-CLI and REST.
* [Author Profile Blocks](https://wordpress.org/plugins/author-profile-blocks/) - Author and team profiles as Gutenberg blocks — grid, carousel, list and single.

**For the WordPress AI Client**

* [AI Provider for OpenCode Zen](https://wordpress.org/plugins/alamin-ai-provider-for-opencode-zen/) - One API key, 57 models including GPT-5, Claude and Gemini 3, for the WordPress AI Client.
* [AI Provider for MiniMax](https://wordpress.org/plugins/alamin-ai-provider-for-minimax/) - MiniMax M2 and M3 models for text generation, for the WordPress AI Client.

== Installation ==

**Requirements**

* WordPress 6.0 or higher
* PHP 7.4 or higher
* Divi theme, Extra theme, or Divi Builder plugin (version 4.14 or higher, including Divi 5)

**Install from WordPress dashboard (recommended)**

1. Go to **Plugins → Add New**.
2. Search for **Squad Modules**.
3. Click **Install Now**, then **Activate**.
4. Visit **Divi Squad** in the WordPress admin menu to manage modules and extensions.

**Manual install**

1. Download the ZIP from [WordPress.org](https://wordpress.org/plugins/squad-modules-for-divi/).
2. Go to **Plugins → Add New → Upload Plugin**.
3. Upload the ZIP and click **Install Now**, then **Activate**.

== Frequently Asked Questions ==

**What's new in 4.5.0?**
Version 4.5.0 is a quality release. It fixes a long list of controls that appeared to work but had no effect: Logo Grid and Logo Carousel settings (columns, gap, logo sizing, hover effects) never reached the front end in Divi 5, the Inline Content module produced no output at all in Divi 4, and heading-level controls in several modules changed the text size without changing the heading tag. Divi 4 parent modules also render nested child modules correctly again under the latest Divi. Some pages will look slightly different where a previously-dead control now applies — that is the fix. No migration is needed; existing pages keep working.

**Is Squad Modules Lite free?**
Yes, completely free with no feature limits on the 67 included modules. [Squad Modules Pro](https://squadmodules.com/pricing?utm_campaign=wporg&utm_source=squadmoduleslite&utm_medium=textlink) adds 30+ premium modules.

**Do I need the Divi theme or Divi Builder to use this plugin?**
Yes. Squad Modules extends Divi, so you need the Divi theme, the Extra theme, or the Divi Builder plugin (4.14 or higher, including Divi 5) installed and active. It does not work as a standalone page builder.

**Will Squad Modules slow down my site?**
No. Only the modules and extensions you enable load assets on the front end — everything you disable adds zero CSS or JavaScript. Assets are scoped per module, so a page only loads what it actually uses. You can toggle anything off from the dashboard to keep your site lean.

**How is Squad Modules different from other free Divi module packs?**
Two things: scale and Divi 5 readiness. Squad Modules ships 67 free modules — the largest free Divi module library — and *every* one of them runs natively in the Divi 5 Visual Builder via the Block API, not just a subset of "static" modules. You also keep full Divi 4 support in the same plugin, with nothing to migrate.

**Can I switch from another Divi modules plugin without rebuilding my pages?**
Squad Modules installs alongside your current setup, so you can adopt its modules gradually. Pages built with another plugin's modules are unaffected. We recommend backing up before any major change, then rebuilding sections with Squad modules at your own pace.

**Does it work with Divi 5 and the new Visual Builder?**
Yes. Every module runs as a native Divi 5 Block API module with full Visual Builder support — live preview, design controls, and frontend output. Divi 4 builder support is also fully maintained.

**Are all 67 modules available in both Divi 4 and Divi 5?**
Yes. All 67 modules run natively in the Divi 5 Visual Builder and all 67 also run in the classic Divi 4 builder. Post Carousel was the last Divi 5-exclusive module; it gained Divi 4 support in 4.6.0.

**Do I need to migrate anything when switching from Divi 4 to Divi 5?**
No. The same plugin handles both builders. Pages built in Divi 4 keep working in Divi 4; new pages built in Divi 5 use the native Divi 5 modules. Nothing to migrate or convert.

**Which Divi version is required?**
Divi theme, Extra theme, or Divi Builder plugin version 4.14 or higher, including all Divi 5 releases.

**Can I disable modules I don't need?**
Yes. Go to **Divi Squad → Modules** and toggle any module on or off. Disabled modules load zero assets on the front end.

**Does it work with WPML?**
Yes. Module attributes for translatable content are registered in `wpml-config.xml`.

**Is Squad Modules GDPR compliant?**
Yes. The modules render server-side with plain CSS and set no cookies, load no third-party scripts, and send no visitor data to external services — nothing is embedded from outside your site. The Floating Chat Button uses direct deep links (wa.me, t.me, tel:, mailto:), not an embedded third-party widget, so no data leaves the visitor's browser until they click. Optional plugin-usage diagnostics are opt-in only and never collect visitor personal data.

**Does it work with WooCommerce?**
Yes — Squad Modules runs alongside WooCommerce, and every module can be used on shop, cart, checkout, and product pages built with Divi. The plugin does not yet include dedicated WooCommerce product modules (a product carousel/grid is on the roadmap); for now, use Post Grid, carousels, and the content modules on your store layouts.

**Will updates break my existing pages?**
Updates are tested against all supported Divi and WordPress versions before release. As a precaution, back up before any major update. If you encounter an issue, [contact support](https://squadmodules.com/support?utm_campaign=wporg&utm_source=squadmoduleslite&utm_medium=textlink).

**How do I get support?**
Free: [WordPress.org support forum](https://wordpress.org/support/plugin/squad-modules-for-divi/) or [Facebook community](https://www.facebook.com/groups/squadmodules/). Pro: [priority email support](https://squadmodules.com/support?utm_campaign=wporg&utm_source=squadmoduleslite&utm_medium=textlink).

== Screenshots ==
1. Flip Box (Divi 5) — cards that flip on hover with image, title, subtitle, body, and CTA; rotate, slide, zoom, fade, open, and diagonal animation types.
2. Before / After Slider — drag-handle image comparison with horizontal and vertical orientations.
3. Post Grid — filterable blog grid with 16 element types, ACF support, numbered pagination, and AJAX load more.
4. Form Stylers — native Divi design controls for Contact Form 7, WPForms, Gravity Forms, Ninja Forms, and 7 more form plugins.
5. Image Carousel — touch-friendly image carousel with captions, autoplay, loop, and lightbox.
6. Lottie Animation — JSON animations with play/pause/loop controls embedded directly in the Divi builder.
7. Typing Text — animated typewriter headline with custom word list, speed, cursor style, and colors.
8. Login Experience — fully branded wp-login.php replacement built with Divi modules (Login Form, Register Form, Lost Password, Reset Password).

== Upgrade Notice ==
= 5.0.0 =
A major release. The MetForm styler has been removed — it could not style an Elementor-rendered form, and had stopped registering against current MetForm. Three new form stylers (Everest Forms, Happyforms, weForms), Divi 5 caught up with the classic builder across seventeen modules, and the Visual Builder now shows what a saved page shows: every form styler's Design tab did nothing on the canvas before this, and two modules could not be edited there at all.

= 4.6.2 =
Restores the Divi 5 Visual Builder: all modules register again, their styles load, and the form stylers gained the field-grid, footer, select-field and per-field validation message controls alongside the other form fixes. Recommended for anyone using Divi 5.

= 4.6.1 =
Fixes two modules that could fail outright: Hover Box errored instead of rendering in the classic builder, and the Gravity Forms styler could stop the Divi 5 builder from loading a form. Also fixes Post Grid crashing pages when another plugin hooked its filters, and post elements rendering twice when Post Grid and Post Carousel were both enabled.

= 4.6.0 =
Feature release: Post Carousel now works in the classic Divi builder as well as the Divi 5 Visual Builder — it was previously Divi 5 only, which is why enabling it appeared to do nothing. Also fixes heading tags being silently changed when a Divi 4 layout is converted to Divi 5, and restores the uninstall cleanup, which had never actually shipped. No migration; existing pages keep working.

== External Services ==

The modules themselves render on your server and call nothing. One service is
contacted, and it is about licensing rather than content.

**Freemius** — `api.freemius.com`. This is the platform that handles the plugin's
licensing, updates and opt-in usage tracking. Checking for an update, and
activating or deactivating a licence, sends the site URL, the plugin version and
the licence key. Usage tracking — which sends the WordPress and PHP versions and
which of the plugin's features are in use — is opt-in: the plugin asks on
activation and does nothing if you decline or dismiss it.

The WhatsApp module builds a `wa.me` / `api.whatsapp.com/send` link for the
visitor to click. That is a link in the page, not a request from your site;
nothing is sent unless a visitor follows it, and then it is their browser talking
to WhatsApp, not your server.

Terms: https://freemius.com/terms — Privacy: https://freemius.com/privacy

== Changelog ==
= 5.0.0 (22-08-2026) =

**Breaking:**
- The MetForm form styler has been removed. MetForm builds its forms for Elementor, so a MetForm form in a Divi page is an Elementor document with its own per-form CSS that the styler could not win against, and its fields are Elementor widgets rather than form fields. The module had also stopped registering against current MetForm. It was off by default, so this only affects sites that turned it on.

**New:**
- Form stylers for **Everest Forms**, **Happyforms** and **weForms**, in both builders — bringing the library to 67 modules and 11 form stylers.
- Every module now carries an icon drawn for it, and the eleven form stylers show their plugin's own brand mark.
- Post Grid and Post Carousel show real posts while you edit, and let you pick categories and tags from a list instead of typing comma-separated IDs.
- The form stylers show the real form in the Visual Builder, drawn by the same code that renders it on the page.
- Charts are authored in a data table rather than three text boxes that had to agree with each other.
- Divi 5 modules gained four option groups Divi provides for its own modules — Interactions, Scroll Effects, Sticky and Transform — plus the module-level Link option on 39 modules.
- Divi 5 caught up with the classic builder across seventeen modules. Advanced Divider, Flip Box, Typing Text, Dual Button, Post Grid's Load More, Business Hours, Post Reading Time and the form stylers all gained settings that existed in Divi 4 and had no counterpart, including per-side element styling, text fill and clipping, icon layout, divider lines, and hover-revealed and image button icons.
- Every form styler can colour and size its checkboxes and radios, and seven more can style the message shown against a field that failed validation.
- The Checkbox and Radio size setting now actually resizes the control.
- The Forgot Password and Reset Password switches on the Extensions page now do something.

**Bug fixes:**
- Every form styler's Design tab did nothing in the Visual Builder. A module renders its CSS twice — once for a saved page, once for the builder's canvas — and the canvas rendered only the module's own group, so of Gravity Forms' 33 design groups the builder drew one. Colours, typography, spacing, buttons and messages were visible only after saving. Seventeen further modules had the same split, and the reverse case left thirteen modules' settings off the page entirely.
- Advanced Button and Hover Box could not be used in the Visual Builder at all: both were replaced by Divi's error panel, so neither could be placed, selected or edited, while a saved page rendered them correctly.
- A module's own links ignored every typography and colour setting. A shared reset marked seven properties `!important` on every link inside a module, which beats specificity, so on the 13 modules using it any setting for a link-based element did nothing.
- Twenty-two of the Gravity Forms styler's thirty-one design sections produced no CSS at all, and several others were overruled by the plugin's own default styling or painted elements belonging to another section.
- Forms styled by this plugin reached visitors unstyled, because the form plugin's own stylesheet was loaded only while the Visual Builder was open.
- Converting a page from the classic builder dropped settings the modules already had, and turned icons, spacings, ratings, colours and flip directions into shapes Divi 5 does not read.
- Dynamic content — a post title in a button, an author name in a heading — printed its raw placeholder instead of the value, on the page and in the builder.
- Images, Lottie files, videos and icons chosen in a Divi 5 module could render as the literal word "Array".
- Applying a saved preset to a Divi 5 module could overwrite text, links and images on the module you applied it to, and a preset saved from a form styler applied its button styling twice.
- Post Grid and Post Carousel filtered by one tag when several were chosen and showed every post when set to the current category; Post Grid's Load More button never appeared at all.
- The Divi 5 Star Rating always wrote an `<h2>`, breaking heading order, and the Number Counter gave its image an empty alt attribute with no way to set one.
- Duplicating a post kept only the first value of any meta field stored across several rows.
- Uploading an SVG consisting only of a DOCTYPE declaration reached the XML parser as an empty string.
- Ninety-nine design settings across twenty-nine modules were filed as content rather than design, so presets and Copy Module Styles carried the wrong things.
- Eight classic-builder modules and four Visual Builder previews drew something other than their content, and a form styler that hit an error vanished from the builder with no explanation.

**Internal:**
- The JavaScript side of the build is now checked in CI: ESLint, Stylelint, the type check and Jest all run, none of which ran before. Stylelint went from 958 errors to zero and ESLint from 320 problems to zero.
- The type check had been passing while examining no code at all, and fifteen JavaScript test suites had been failing to compile rather than failing to pass.
- Five suites now render the modules rather than reading their metadata, and the design suites ask the browser which rule won rather than trusting the emitted CSS.
- Fifty development dependencies are gone from the install, and the toolchain no longer straddles two major versions of Babel.
- The compatibility layer kept for the class names retired in 3.3.3 has been removed.

= 4.6.2 (15-08-2026) =

**New:**
- Every form styler can now style three areas that previously had no settings at all: the grid that spaces the fields apart, the footer holding the submit button, and select fields on their own. The gap between fields belongs to the grid containing them and the space above the submit button belongs to the footer, so neither could be reached by adjusting the fields themselves. Available across all nine stylers — Contact Form 7, WPForms, Gravity Forms, Ninja Forms, Fluent Forms, Forminator, Formidable, MetForm and SureForms — in both builders and the Visual Builder preview.
- Gravity Forms gained controls for elements that were previously unstyleable: the next, previous, save-and-continue and file-upload buttons, the image-choice field, and the per-field validation message.
- Contact Form 7, WPForms, Fluent Forms, Formidable, Forminator, MetForm, SureForms and Ninja Forms gained a per-field validation message background, margin and padding.
- Divi 5's Gravity Forms styler gained the design controls the Divi 4 one already had: form title, form description, field descriptions, sub-labels, the required indicator, section breaks with their titles and descriptions, and complex fields such as name and address.

**Bug fixes:**
- The Divi 5 modules disappeared from the Visual Builder module library, loaded without any styles, or failed to build at all. The builder bundle is fixed so every module registers and its stylesheet loads in the builder and frontend.
- Gravity Forms styler: none of the design settings had any effect on most forms. The selectors no longer depend on which form theme is active.
- The form pickers in the Divi 5 builder listed no forms and could show "Oops, an error has occurred"; the available forms are now sent in time and the placeholder option no longer appears selected.
- The Divi 5 design sections for the Gravity Forms styler did not appear in the builder; all twenty now appear.
- Gravity Forms: the Field Elements toggle appeared with duplicated sub-tabs; the module's definition now replaces the base one.
- Ninja Forms: the submit button's design settings now match both `<input>` and `<button>` submit elements.
- MetForm and SureForms: the validation and error message controls are split into the per-field message and the form-level response.

= 4.6.1 (14-08-2026) =

**Bug fixes:**
- Hover Box produced a fatal error instead of rendering in the classic Divi builder. It referenced one of Divi's own classes without importing it, so PHP looked for that class inside the module's own namespace and stopped with "Class not found" as soon as the module tried to output its overlay styles, which happens on every render.
- The Gravity Forms styler could stop the Divi 5 builder loading a form, showing "Oops! An Error Has Occurred. This content could not be displayed." It captured the form with an output buffer, and if Gravity Forms failed while producing the form the buffer was left open, so stray output reached the builder and it could not read the response. The form is now requested directly, the way the Divi 4 module has always done it.
- Post Grid could take a page down. Its post-element filters passed the post object where the markup belonged, so any other plugin hooking them received the wrong type and crashed the page — WordPress's own text formatting was enough to trigger it. The filters now pass the markup, with the post alongside it as context.
- With both Post Grid and Post Carousel enabled, every post element was rendered twice, once by each module. Each module now renders only its own output.

**Improvements:**
- The gallery image helper was duplicated once per builder; it is now a single shared class.
- Documentation accuracy: several files still said Post Carousel was Divi 5 only and that 64 of the 65 modules ran in Divi 4. All 65 have run in both builders since 4.6.0.
- Post Carousel was missing from the WPML configuration, so its attributes were invisible to translation tooling.

**Internal:**
- The code quality checks that had been switched off in CI are running again. PHP coding standards, static analysis and the PHP test suite were all disabled, so none of them had run against any change.
- Style and script linting could not report problems without also rewriting files, because both commands had the fix flag built in. Each now has a separate check and fix command. Turning checking on surfaced 958 stylesheet problems and 320 script problems that had been passing silently; all of them are resolved, and several were rules configured to contradict each other rather than faults in the code.
- Divi 4 preview components no longer nest conditional expressions several levels deep, and three of them declared their render method after private helpers. A shadowed variable and a stale module path in the type declarations are also fixed.

= 4.6.0 (09-08-2026) =

**New:**
- Post Carousel is now available in the classic Divi builder. It previously existed only for the Divi 5 Visual Builder, so enabling it in Divi 4 appeared to do nothing. It shares Post Grid's query and post elements, so every element type, icon and design option carries over.

**Bug fixes:**
- Converting a Divi 4 layout to Divi 5 silently changed heading tags: Business Hours became a `span`, Flip Box titles became `h3`, Flip Box subtitles became a `div`, and the Advanced Divider's text became a `span`. Those modules now expose the same heading-tag control in both builders, and a converted layout keeps the tag you chose.
- The uninstall routine has never run for anyone: `uninstall.php` was excluded from the released package, so removing the plugin left its options, transients and custom table behind.
- Modules that only work in one builder are now labelled, and the switch is disabled when your site cannot use them, instead of turning on with no visible effect.
- Button settings on Flip Box and the nine form stylers exposed a stray control created by a mis-nested field definition.
- The packager rewrote a date inside the changelog on every build.

**Improvements:**
- Builder detection now asks Divi directly whether Divi 5 is enabled, so sites that deliberately run the classic builder are treated correctly.
- Accuracy pass over the bundled documentation: several files still described the previous release, and one told contributors to edit a generated file.

**Internal:**
- Coding standards now check the module code. A pattern intended to skip `node_modules` was also skipping every Divi module, leaving 189 of 327 PHP files unchecked; the 522 issues that surfaced are fixed, including two double-escaped values in the login and lost-password forms.
- Divi modules can now be built inside the test suite, so field definitions are actually executed rather than only inspected. This immediately caught the button-field defect above.


Older releases are listed in `changelog.txt`, which ships with the plugin and is the full record.
