The Divi 5 Public Beta is available today. If you prefer the experience to Divi 4, it’s ready for use. If you use Divi 5, you’ll notice an update notification for Public Beta 6. We release new Divi 5 versions every two weeks, and each one improves upon the last.
If you haven’t tried Divi 5 yet, give it a test and let us know what you think.
What’s New In Public Beta 6?
We implemented 104 bug fixes and improvements, and released a new feature called Semantic Elements & HTML Wrappers.
Our mission over the past few months has been to fix bugs and implement minor improvements. The entire team continues to address your feedback as we approach the official release of Divi 5. After nearly a year of public testing and enhancements, Divi 5 is stable, and we’re getting ready to remove the beta label and make it official.
In the meantime, you can use Divi 5 if you prefer the experience to Divi 4. Give it a try and experience the future of Divi today!
In my spare time, I’ve also been keeping the ball rolling on your most requested features. If you want to get an early inside scoop, I often post progress reports in the Divi Theme Users Facebook group. Join us!
Semantic Elements & HTML Wrappers
We released Semantic Elements & HTML Wrappers in Public Beta 5.2 🎉
Now, you can change the element type of any module and utilize semantic tags like nav, section, header, and button to give inherent meaning to each. It’s important for accessibility and SEO, as it enables screen readers and bots to understand a page’s structure.
For example, you can build your own menu using Divi elements and then change the semantic tag to ‘nav’ to inform screen readers of its purpose.
We also added the ability to add custom HTML before and after any element, giving you more freedom to create custom wrappers and inject code into specific areas of the page that a code module can’t access.
Fixes & Improvements
Here is a list of all fixes and improvements included in this update.
- Added translation support for D5 Visual Builder UI in all 32 supported languages.
- Fixed the issue where the Video Slider overlay and play icon did not appear for hosted MP4 videos.
- Fixed issue where custom breakpoints enabled in Sitewide Responsive Breakpoints didn’t appear in module visibility options, preventing users from hiding modules on custom breakpoints.
- Fixed Circle Counter, Circle Background Color, and Circle Background Opacity preset values not appearing in the module settings panel when the preset is applied.
- Fixed “Download Backup” button in save failure modal to actually download a JSON backup of the current page using the portability export system.
- Fixed module locking functionality, TypeScript errors, and added a visual lock indicator with proper styling for locked modules in the Visual Builder.
- Fixed gradient not rendering in Visual Builder when using global colors with parallax background images.
- Added support for importing multiple layout files simultaneously in Divi Library Portability.
- Fixed Body Text option group appearing in Woo Notice module Design Tab for Product and Cart page types where it doesn’t apply. The group now appears only when the Page Type is set to Checkout.
- Fixed ACF repeater fields inside group fields not being accessible in Loop Builder by implementing recursive field discovery and proper name prefixing for nested ACF structures.
- Updated documentation to clarify optimal patterns for registering custom field components in Divi 5 modules, including all three use cases and hook timing explanations.
- Fixed inconsistent slide transition timing in Group Carousel automatic rotation when reaching carousel boundaries.
- Fixed modal closing unexpectedly when clicking outside dropdown fields inside Custom Attributes and Interaction Builder modals. Dropdowns now close independently without closing the entire modal.
- Fixed the random order loop and ensured featured images update correctly on page reloads.
- Fixed Code module adding unwanted bottom margin after migration from Divi 4 to Divi 5.
- Fixed PHP warnings for undefined array key ‘isCatchAll’ in Display Conditions when processing categories and tags conditions.
- Fixed Grid layout unit picker to display the fr (fraction) unit as a selectable option, improving discoverability and usability for CSS Grid layouts.
- Fixed missing alt and title attributes in Loop Builder featured images by automatically populating them from Media Library metadata when displayed in Theme Builder templates.
- Fixed loop-enabled blocks not being detected when the loop configuration contains nested JSON structures, causing loop variables to display as raw markup on the front-end.
- Fixed Migrator showing incorrect module counts when re-running compatibility check after editing content in Divi 4.
- Fixed slide-in header submenu expansion functionality by ensuring the required JavaScript handler loads for the slide-in header style.
- Fixed empty columns in Visual Builder so custom border styles work correctly without being overridden by the default empty column indicator.
- Fixed transparent header not overlaying Hero module correctly in D5
- padding now applies to the module instead of the section wrapper, matching D4 behavior.
- Fixed an issue where manually setting the Layout Style field to “flex” (the default value) incorrectly displayed it as a modified value with dark text and a reset icon.
- Fixed Page Portability losing tab visibility and incorrect import routing when opened after Library Portability.
- Fixed background gradient not inheriting from desktop breakpoint when parallax is enabled on tablet and phone breakpoints.
- Fixed math function values (calc, clamp, min, max) not displaying in CSSNumeric input fields for more minor breakpoints when they differ from the default value.
- Fixed nested modules disappearing on the front-end when the parent module has responsive content by filtering element updates to only affect direct children, preventing descendant selectors from incorrectly matching nested modules’ content.
- Fixed border-radius disappearing on hover for sections with parallax background images in Visual Builder.
- Added Root-Level Objects Overview documentation page explaining the structure and purpose of all seven root-level objects in conversion-outline.json files.
- Added comprehensive tutorial documentation for valueExpansionFunctionMap and nonResponsiveAttributes properties in conversion-outline.json, including a complete reference table of all available expansion functions and detailed examples for third-party developers.
- Added best practices documentation for conversion-outline.json files covering common patterns, testing strategies, troubleshooting tips, and maintenance guidance.
- Fixed button icon vertical alignment issue in WooCommerce Cart Totals, Checkout Payment, and Cart Notice modules when using default icons with “Show Button Icon” enabled (#46974).
- Fixed button icon spacing issue in WooCommerce Product Add To Cart module to match other modules and custom icon spacing (#46975).
- Fixed WooCommerce zoom icons and styles not loading on archive pages when using Theme Builder templates with WooCommerce modules.
- Fixed logo images in Hero module loading with incorrect size and then resizing in Visual Builder by persisting fetched width and height attributes to module attributes.
- Fixed incorrect cursor pointers for locked modules. Lock icons now consistently display the pointer cursor for all locked elements (Sections, Rows, and Modules), and locked modules themselves display the not-allowed cursor to indicate that they cannot be moved.
- Fixed Icon List Item align-items CSS is being overridden by default styles when using column layout direction.
- Fixed PHP 8.4 deprecation warnings by explicitly declaring nullable type hints for optional parameters in the MultiView utility trait.
- Fixed Image module justify-self alignment not working in CSS Grid layouts due to auto margin conflict.
- Fixed an issue where redo stopped working when restoring global colors during history operations. The fix also resolves the same problem when applying presets with global colors.
- Fixed Responsive Editor richtext fields, which were incorrectly updating all breakpoints when typing, and added automatic breakpoint switching when focusing on richtext fields in the Responsive Editor.
- Added developer documentation for programmatically clearing CSS cache, including filter and action hook usage examples.
- Fixed PHP fatal error when mb_convert_encoding() is called without the mbstring extension available in AdvancedOptionConversion.
- Fixed PHP fatal error when mb_ord() receives an empty string or when the mbstring extension is unavailable in Customizer button icon settings.
- Fixed nested Text module design styles not applying correctly in Visual Builder when parent and child modules have conflicting styles.
- Fixed Modified Filter not showing both top and bottom section divider fields when both are modified.
- Fixed module and group preset stack changes not synchronizing across global module instances. Also fixed the issue where removing all group presets prevented adding new presets after page refresh.
- Fixed inconsistent automatic modal opening when using “Add Element Above” on sections.
- Fixed the main canvas losing its main status when exported from the canvas grid view.
- Fixed a PHP notice that appeared in error logs when displaying Audio, Link, or Quote post format posts in the Blog module.
- Fixed module drag and drop failing when custom CSS classes contained leading dots or other invalid constructs.
- Fixed an issue where background gradients could not be disabled after being enabled, especially when the gradient length was set.
- Fixed the Gallery module box shadow not following border radius in the Slider layout by applying border-radius to the module container level.
- Fixed wireframe mode to respect row flex-wrap settings, ensuring columns display side by side when flex-wrap is set to nowrap, matching desktop view behavior.
- Fixed an issue where Layout attributes were not included when copying and pasting Item Styles between modules.
- Fixed Video Slider thumbnails not displaying in tabs after the first tab when Video Slider modules are nested inside Tab modules.
- Fixed the inability to delete D4 element presets after migration to D5 permanently.
- Fixed an issue where CTA modules migrated from Divi 4 with background disabled displayed unwanted padding that wasn’t present in the original Divi 4 layout.
- Fixed the Group Carousel automatic rotation speed unit conversion so that the seconds unit setting takes effect correctly.
- Fixed Post Content Module not rendering product content when WooCommerce modules are present in Theme Builder product templates.
- Added context detection mechanism for Post Content Module rendering to enable context-aware content suppression in Theme Builder templates.
- Fixed Contact Form dropdown fields marked as “not required” incorrectly show validation errors when left unselected during form submission.
- Fixed transparent Content Area Background Color not working in Theme Builder layouts.
- Fixed documentation to clarify that custom module fields must reference existing group names, not panel names, when using groupSlug or groupName properties in filter hooks.
- Fixed Icon List module icon margin-top spacing not applying when customized in module settings. The spacing setting now correctly overrides the default 5px margin-top value.
- Updated documentation feedback footnotes to remove Discord reference and ensure consistent formatting across all documentation pages.
- Fixed the Contact Form module reCAPTCHA v3 integration by sanitizing form UUIDs to comply with Google’s action name character requirements, allowing forms with reCAPTCHA v3 enabled to submit successfully.
- Fixed Person module layout changing from block to flex during Divi 4 to Divi 5 migration, preserving the original Divi 4 block layout appearance.
- Fixed the Icon List item layout direction not displaying correctly in the Theme Builder canvas preview.
- Fixed the Image and Fullwidth Image modules’ Overlay option group not appearing in preset mode, and enabled Option Group Preset functionality for Overlay and Alignment groups.
- Fixed Video Slider thumbnails not displaying in Accordion Module items after the first item.
- Fixed Woo Product Images module preview not updating in Visual Builder when toggling Show Featured Image, Show Gallery Images, or Show Sale Badge options.
- Fixed VB Library Import not allowing multiple file selection when importing layouts from the library.
- Fixed border not appearing on Woo Checkout Payment module and other modules with default border styles when border width was set without explicitly setting border style.
- Fixed Woo Product Gallery Module images being cropped when using the Slider layout in Divi 5.
- Updated documentation to remove outdated references to JavaScript conversion processing and clarify that only JSON files are used by the PHP migration system for module conversion.
- Added new HTML option group.
- Added a new Element Type option to select semantic tags for any element.
- Added new HTML Before & HTML After options to all elements.
- Fixed broken styles that occurred on the second page load on pages that used Theme Builder Templates, along with post content that targeted an off-canvas element via an interaction.
- Fixed range field spinner arrows not respecting decimal step values (e.g., 0.05), causing incorrect increments. Spinner now correctly steps by the configured decimal value while maintaining backward compatibility for integer steps.
- Fixed column bottom margin not applying on tablet and mobile breakpoints when custom values were set.
- Added documentation for the parent-child object in module.json.
- Added tutorial documentation for the wrapper parent object in module.json, covering wrapper status and HTML tag configuration for third-party module developers.
- Added documentation tutorial for the customCssFields property in module.json, explaining how to define custom CSS input fields for modules.
- Added best practices tutorial for module.json configuration files to help developers create well-structured and maintainable module configurations.
- Fixed Global Color labels not displaying in module settings after importing layouts containing Global Colors.
- Fixed CSS Grid layout to allow any number of columns instead of being limited to 12 columns maximum.
- Added tutorial documentation for the module object in conversion-outline.json, covering content mappings, inner content patterns, header levels, and inline fonts with examples from core modules.
- Added tutorial documentation for advanced properties in conversion-outline.json, covering direct mappings and child objects with examples from core modules.
- Added tutorial documentation for the text_shadow child object in conversion-outline.json, explaining how to map text shadow settings from Divi 4 to Divi 5.
- Added documentation for box shadow mappings in conversion-outline.json, explaining how to map box shadow settings from Divi 4 to Divi 5 for both module-level and element-specific shadows.
- Added tutorial documentation for borders child object in conversion-outline.json, explaining how to map border decoration properties from Divi 4 to Divi 5 with examples from core modules.
- Added tutorial documentation for the filters property in conversion-outline.json, explaining how to map CSS filter settings from Divi 4 to Divi 5 decoration properties for both module-level and child element filters.
- Added CSS Properties tutorial documentation explaining CSS selector mappings in conversion-outline.json files.
- Added documentation for module.json basic properties to help third-party developers understand fundamental module configuration options.
- Fixed some third-party plugin shortcodes losing attribute values when migrating from Divi 4 to Divi 5.
- Fixed Toggle module title colors not applying when nested inside Slides with dark backgrounds.
- Fixed WooCommerce product duplication corrupting Divi 5 content by ensuring proper content escaping.
- Fixed inconsistent ellipsis formatting in Loop Excerpt between Visual Builder and Frontend by ensuring full content is sent from the server and ellipsis is consistently added after truncation based on the user’s word limit setting.
- Fixed the issue where the builder would not load if the website had only a global Theme Builder footer template applied, with no other templates.
- Fixed broken styles on the front end after multiple page loads when the page used an interaction that targeted an element on the same canvas.
- Fixed loop detection, which was incorrectly identifying loops when they didn’t exist, leading to unnecessary processing.
Jump Into Divi 5 Today
The Divi 5 Public Beta is available today. Give it a try, and let us know what you think!
If you find a bug, report it to our team, and we’ll fix it. We’ll continue to work aggressively to add new features and address feedback.
Stay tuned for a new Divi 5 version every two weeks.

Greetings!
Any timeline on these items to be fixed?
– Button hover issue in Visual Builder, even though hover styles have been assigned.
– There still is no ‘Width’ option for Buttons.
– Loop Builder crashing during setup (ET verified this is an issue).
– Loop Builder breaking pages when using ACF fields (ET verified this is an issue).
– Loop Builder styling ceases to function after a period of time when making edits–even after saving, updates do not appear on front or backend (ET verified this is an issue).
Are you aware of any problems with scroll animations in combination with the z-index of an element, for example, to create stacking cards?
The combination of multiple mouse interactions doesn’t work, for example, tilt and translate at the same time, as well as the combination of scroll animations and interactions.
Also, do the flex direction and other flex settings in the menu item not work?
Do the bottom flex settings not apply? Is it possible to reduce the size of the bottom icon?
Will it be possible to stack multiple hover effects on one element?
There are also problems with normal interactions, such as links and buttons, when an active scroll animation is in progress.