Page Builders: Elementor, Bricks and Divi

3 min read

Page builders and ajax navigation both want control of the DOM, script execution and click handling. Mostly they coexist. This page covers the places they do not.

Universal rule

Anything that must survive navigation belongs in a global template, not on a page. Page content is exactly what gets replaced. A player, sticky bar or chat widget placed on a page will disappear on the first click. Use the builder’s footer or header template instead.

Elementor

Persistent player

  1. Templates → Theme Builder → Footer, edit your footer.
  2. Add the audio widget, or an HTML widget containing your player.
  3. Select it → Advanced → CSS IDmy-radio-player.
  4. Settings → AjaxPress → Advanced → Media Players#my-radio-player.
  5. Give the player self-contained positioning — Elementor styles widgets through their parent section, and those styles stop applying once the player is lifted.

Known issue: Elementor Pro Forms

On pages with an Elementor Pro Form widget, submission can complete only partway. The entry saves (Collect Submissions runs) but “Actions After Submit” such as the Email action may not fire, and submit_success is never dispatched. It is a race condition — intermittent, more likely under server load.

Cause: AjaxPress listens for form submissions to route them over ajax, which can run in parallel with Elementor Pro’s own handler.

Workaround: add the form’s page to Advanced → Exclude Links. Note the trade-off — excluded pages do not fire ajaxpress:ready, so a player on that page will not start either.

Standard Elementor forms, Contact Form 7, WPForms and Fluent Forms have not shown this behaviour.

Bricks Builder

Front end works. Edit screens have an open issue: with SPA for Admin Dashboard enabled, Bricks edit screens have been reported failing to render.

Fix: Settings → AjaxPress → Basic → turn SPA for Admin Dashboard off. That setting only affects wp-admin; visitors see no difference.

On WordPress 7.0 and newer, leave it off regardless — WordPress now handles dashboard navigation itself.

For a persistent player: build a global footer template, give the player element a CSS ID, use that as your selector.

Divi and Divi 5

Divi 5 Builder has been reported as not working correctly, again around the builder rather than the front end. Turn SPA for Admin Dashboard off first.

If problems persist with Divi 5 specifically, email us with your Divi version — Divi 5 is a significant rewrite and our coverage is incomplete.

Front end: use the Divi Theme Builder for a global footer, and set a CSS ID under Advanced → CSS ID & Classes.

Troubleshooting

SymptomTry first
Builder edit screen will not loadTurn off SPA for Admin Dashboard
Player disappears on navigationMove it into a global footer template
Player moves to the wrong placeGive it its own position: fixed CSS
Widget animations run once onlyRe-initialise on ajaxpress:ready
Elementor Pro form emails not sendingKnown issue — exclude that page
Styles missing after navigationCheck for styles scoped to a parent the element no longer has

When reporting a builder issue, include the builder and version, your theme, and whether SPA for Admin Dashboard is enabled. Builder behaviour is very version-specific.