Posts look blank with a page builder
If a Structura-generated post shows its title and featured image
but the body is empty on the front end, a page builder on your site
is almost certainly replacing WordPress’s default rendering with its
own. Structura writes standard Gutenberg blocks into
post_content; some page builders ignore that content unless a
builder-specific flag is set on the post. When the flag is missing
or “off”, the builder still hijacks rendering and ships a blank
layout to the front end.
This is a silent failure. In wp-admin the post looks fine — the block editor, Yoast’s keyphrase analysis, and REST tools all see the content. It only disappears on the public-facing post.
Is this your problem?
Quick test: open the problem post on the public site. If you see the title and featured image but the article text is missing, and in wp-admin you can see the blocks in the editor, it’s this issue. Confirm by toggling the page builder off for that one post (each builder has a different button — the per-builder pages below cover it) and reloading the front end. If the text reappears, the builder was hijacking rendering.
Which builder is this about?
Structura recognises these builders. Pick the one running on your site for the step-by-step fix:
- Divi — Elegant Themes’ builder. Most common cause of this symptom on agency and SMB sites.
- Elementor
- Beaver Builder
- Brizy
- WPBakery Page Builder
- Bricks
Not sure which one you have? Go to Plugins → Installed Plugins in wp-admin and scan the “Active” list. If your theme is Divi-branded (or you see Divi → Theme Options in the sidebar), it’s Divi.
What Structura already does automatically
Starting with the release shipped on 2026-04-23, Structura writes two protective meta flags on every post it creates:
_et_pb_use_builder = off— tells Divi to leavethe_contentalone for this post._wpb_vc_js_status = false— the same idea for WPBakery.
Those flags are written atomically with the post insert, which means
they’re in place before Divi’s or WPBakery’s own save_post
handler runs. This fixes the most common version of the Divi regression
without you changing anything on your site.
Builders that are still opt-in (Elementor, Beaver Builder, Brizy, Bricks) don’t auto-hijack rendering, so Structura doesn’t write any flags for them. If you see this symptom with one of those builders, a site-specific setting — usually a template assigned via the builder’s Theme Builder / Themer feature — is responsible. The per-builder pages above walk through the fix.
Why it happens (short version)
WordPress stores post body text in post_content and renders it
through the the_content filter. Page builders attach their own
logic to that filter: if the post is “a builder post” (according to
the builder’s own flag), they replace the default rendering with
their shortcode loader or template-renderer. If the post isn’t a
builder post but the builder defaults to claiming every post, the
front end gets an empty shell because the shortcode loader has
nothing to load.
The fix is to flip the builder’s flag per post to “don’t render this one” — which is exactly what Structura now does for Divi and WPBakery automatically. For the other builders, the problem is usually solved in the builder’s template settings rather than per-post.
How to verify the fix on your site
After updating Structura to the fixed version:
- Open the most recent campaign run and click the post it produced.
- On the post’s front-end URL (click View in wp-admin), confirm the article body is visible below the title and featured image.
- If the body is still blank, go to the page for your specific builder above and follow the “How to verify your theme template still renders post content” section at the bottom of that page.
If none of this applies
Contact support with:
- The page builder on your site (and its version).
- Your active theme and theme builder template (if any).
- A link to the blank post on the front end.
- A screenshot of the post in the WordPress block editor showing the expected content.
Related pages
- My post wasn’t published — if the post is missing from wp-admin entirely, this is a different problem.
- Reading the Logs page