u/Mikhael_Love

▲ 13 r/divi

Divi Is Not Ready for Prime Time

I have been using Divi for about 10 years and have hundreds of posts on my site. I am currently testing the Divi 5 migration in a sandbox environment, and the whole process has been absolutely painful.

If not for the fact that Divi 4 will eventually become obsolete and unsupported, I wouldn't even be considering this. But right now, Elegant Themes really needs to get their shit together.

Here is what I have found so far, and why you should wait:

1. Selective Sync is Gone (and Presets are Flawed)

In Divi 4, I relied heavily on Global Galleries with Selective Sync so I could keep a uniform style but change the images on a per-post basis. Divi 5 killed Selective Sync completely.

The intended workaround is to use Divi 5 Presets, but there is a massive oversight: Presets do not support any of the values inside the Content tab. My global galleries used the Content tab to randomize the image order and set the post count to 1,000. Because presets strip this out, every migrated gallery defaults back to the standard Divi behavior. Who the hell wants a gallery that only shows 4 pictures at a time with pagination? It’s just silly.

I did create a custom plugin to fix some of this. It basically converts a gallery to the Divi 5 style and assigns a choesn preset. I 'hacked' the preset to manually add the missing content attributes. And, while it works, it is not a fix. Saving the preset will remove those manual changes. I am considering a more rigid solution of hooking into WP options (where presets are stored) so I can fix the presets on the fly when they are used.

2. The Migration Engine Destroys Content

The migration doesn’t just fail to convert some things, it actively breaks them.

  • Three of my articles were completely destroyed. Just gone.
  • A several others (that I know of so far) were corrupted and filled with broken code.
  • To fix this, I essentially have to manually copy and paste the content from a backup version of the website.

3. CSS and Styling Headaches

I was able to figure out a lot of the CSS changes and rebuild most of the display elements, but there is still a very long way to go. The backwards compatibility they promised just isn't working for me on certain Divi 4 features.

The migrator disappointed and left me with broken pages.

My Recommendation: Do Not Update Yet

If you cannot make a sandbox of your website, especially if you have a lot of content, do not do this update. Because of the sheer amount of data loss and corruption I've found, there is no option right now other than to edit and audit every single page with human eyes. For a website with so much content, the amount of work required to do that is insane, potentially costing weeks of free time just to get back to where I started. And this is only what I have found so far.

Divi 5 is simply not ready for prime time.

reddit.com
u/Mikhael_Love — 9 hours ago
▲ 3 r/divi

Divi Gallery Global module shows as "legacy" after Divi 5 migration (~100 projects affected)

[SOLVED]

I am testing migration to Divi 5 in a sandbox.

I have about 100 projects and all of them rely heavily on the native Divi Gallery module. To keep styles consistent, I have this module saved and set as a Global item inside the Divi Library. This represents thousands of images over several years.

After running the Divi 5 migration, the migration technically finishes, but the Global Gallery module inside the Divi Library stays locked with the "legacy module / backwards compatibility" warning panel. Because it is stuck in emulation mode, the frontend rendering is completely broken across my entire portfolio.

I have already ruled out the standard variables:

  • Tested with ZERO active plugins: The issue persists identically.
  • Tested with NO child theme (Pure Parent Divi 5 active): The warning banner remains.

The fact that it flags a native Elegant Themes module with the text "consider letting the third-party developer know" makes me think the migration engine completely chokes when trying to parse native Divi 4 Gallery shortcodes if they are saved as a Global Library item.

Reconstructing these galleries manually across 100 projects is an absolute show-stopper for moving my production site to Divi 5.

Has anyone else experienced the Divi 5 migrator failing specifically on Global Library elements, and did you find any solutions to force them to convert?

https://preview.redd.it/6ipwfo4ap7bh1.png?width=607&format=png&auto=webp&s=4fa917860c7de45bbc86e3fcc7f7633e932e43a1

The nutshell version of how I fixed it

After a lot of digging, I figured out why the Divi 5 migrator is choking on this, and I built a way out of it.

The Problem: In Divi 4, I used Global Gallery modules with "Selective Sync" to keep a universal style while unsyncing the images on a per-post basis. Divi 5 effectively killed this pattern. As far as I can tell, the Selective Sync feature does not exist in Divi 5. The workaround is presets.

So I created a preset with all of the settings, then created a custom plugin to help me work through the posts. Basically, I select the Divi 4 Global Module ID, then it finds the posts that use that global and gives me a list. I select the one I want to update, then select the preset from a list. Click update and it rewrites the gallery modules used in that post to the Divi 5 way and applies the chosen preset.

After testing one, I found that none of the items on the Content tab of the Divi Gallery were included in the preset. I am guessing that Elegant Themes excluded them intentionally because 'why would anyone want the content to be a preset?' Well, that content tab also includes sort method and post count. Anyway, I found a fix for that, too.

Basically, I reverse engineered the Divi Module as it exists in a post, then reverse engineered the serialized object that is the preset and injected (for my use case) the equivalent of:

"module": {
"advanced": {
"postsNumber": {
"desktop": {
"value": "1000"
}
}
}
}

and

"image": {
"advanced": {
"galleryOrderby": {
"desktop": {
"value": "rand"
}
}
}
}

Okay, it is a bit more complicated than that, and too complicated to explain here, but I hope you see what I am doing. The downside is, if that preset is ever updated those will be overwritten, and in my case, will break 100 galleries.

So, I am probably going to add a feature to my plugin to override those in real time using the WP options hook.

This code has not been tested so do not use it. Plus, I would add a setting section to pick which preset and what to change.

// Intercept the Divi 5 presets exactly when WordPress pulls them from the database
add_filter('option_et_divi_builder_global_presets_d5', 'conceptual_preset_injector');

function conceptual_preset_injector($preset_data) {
// 1. Check if the specific preset exists in the array
if (isset($preset_data['module']['divi/gallery']['items']['wpayu1squ9'])) {

// 2. Inject the missing settings directly into the array in-memory
$target = &$preset_data['module']['divi/gallery']['items']['wpayu1squ9'];
$target['attrs']['module']['advanced']['postsNumber']['desktop']['value'] = '1000';
$target['attrs']['image']['advanced']['galleryOrderby']['desktop']['value'] = 'rand';
}

// 3. Hand the modified data back to Divi (the database remains untouched)
return $preset_data;
}

Anyway, I am ready to do more testing in my sandbox. I have already noticed some other minor issues, but mostly with css selectors.

reddit.com
u/Mikhael_Love — 1 day ago

Hush

I recently watched the film Pressure, which centers on the crushing logistical weight of predicting the weather for the D-Day landings. But it was the film’s opening scene that completely caught me off guard. It portrayed the brutal reality of Exercise Tiger, a classified April 1944 training rehearsal at Slapton Sands that ended in a catastrophic loss of young lives due to miscommunication and unexpected German E-boat attacks. The emotional weight of seeing the depiction of young men cut down during a "practice run" introduced me to a devastating side of WWII history I had never truly considered, and it compelled me to dig deeper into their story.

This image is part of that deep dive. I wanted to capture the uncompromising, visceral reality of a young soldier in the aftermath of that chaos.

I titled this piece "Hush" because of the haunting stillness of the water washing over the sand, the immediate and strict blanket of secrecy the Allied command threw over the disaster to protect the Normandy invasion, and the ultimate, heartbreaking reality that so many young men's voices were never heard again.

u/Mikhael_Love — 5 days ago

Intimacy in Entropy

Finding a quiet sanctuary and a moment of pure human connection inside the chaotic randomness of the latent space.

u/Mikhael_Love — 6 days ago