Divi fix
Divi Theme Builder Header, Footer or Template Not Showing?
The Theme Builder says your header is assigned. The live page shows the old one, or no footer, or a body with the content missing. Divi is nearly always doing what its rules tell it to; the work is finding which rule, and whether it was ever saved.
- FailDefault template headerEmpty
- WarnNew header assigned toAll Pages only
- FailBlog posts and archivesOld header
- WarnDisabled templates2
- PassBody has Post ContentYes
- WarnStatic CSS clearedNot since edit
What you are seeing
- The new header appears on some pages and the old one on the rest
- The footer is missing on blog posts or on the shop only
- A page's own content vanished after a body template was assigned
- The template looks right in the Theme Builder and never reaches the live site
- The 404 and search pages ignore the design entirely
Why it happens on Divi
Most common first.
- 1
The Theme Builder itself was never saved
Saving a layout inside the builder and closing it returns you to the Theme Builder screen, which has a save of its own: the Save Changes button at the top. New templates, assignments and enable or disable switches take effect only after that button is pressed.
- 2
All Pages does not mean every URL
A template assigned to All Pages covers WordPress pages and nothing else. Blog posts, category archives, the WooCommerce shop, search results and the 404 page are separate assignment targets. If the Default Website Template has no header of its own, those URLs fall back to the header from the theme's Customizer settings, which is the old one.
- 3
A narrower template or an exclusion is winning
When two templates could apply, Divi uses the more specific one. A template for one category outranks All Posts, and a template for one page outranks All Pages. The Exclude From tab works the other way, quietly removing a page from a template you were sure covered it.
- 4
The slot is hidden, or no longer global
Each template has three slots: header, body and footer. The eye icon on a slot hides that area on the front end for that template. A slot can also be detached from the global header, after which it is a private copy and stops following edits made to the shared one.
- 5
A custom body with no Post Content module
A body layout replaces the whole content area. Unless it contains a Post Content module, the page's own text and builder layout have nowhere to appear, so every page using that template shows the template and nothing else.
How to fix it, in order
Least invasive first. Stop at the step that fixes it.
- 1
Export the Theme Builder before you touch it
In Divi, Theme Builder, use the portability icon (the two arrows) to export all templates to a file. Assignments are easy to change and tedious to reconstruct, and this file is the undo.
- 2
Name the kind of URL that is wrong
Visit the broken URL while logged in and read the admin bar: Edit Page, Edit Post, Edit Category and Edit Product are different things to the Theme Builder. Then list every template whose assignment could match that kind.
- 3
Read Use On and Exclude From for each candidate
Open each template's settings from its card and check both tabs. Look for a narrower template that also matches, an exclusion that names the page and a template that is disabled, which Divi shows dimmed. There is usually one called Header Final 2 in the list, and it is usually not the one in use. Fix the rule instead of building a new template around it.
- 4
Move the shared header and footer into the default template
The Default Website Template is the fallback for every URL no other template claims. Put the global header and global footer there, then let custom templates reuse those global slots and change only what differs, usually the body.
- 5
Check each slot's eye icon and add Post Content
A struck-through eye means that area is hidden for that template; click it to show the area again. Open any custom body layout and confirm it contains a Post Content module in the spot where the page's own content should appear.
- 6
Save Changes, then clear in order
Press Save Changes at the top of the Theme Builder and wait for the confirmation. Clear Divi's static CSS under Divi, Theme Options, Builder, Advanced, then the caching plugin, then the CDN. Check the page in a private window before deciding it did not work.
Keep it from coming back
- Keep one global header and one global footer in the Default Website Template, and add templates only for real exceptions
- Name every template for what it is assigned to, not for the day it was made
- Disable or delete templates that are assigned to nothing
- Export the Theme Builder before any import, cleanup or redesign
The permanent fix
A faster Next.js build, with a CMS made for your business
A header that needs a rules engine to decide where it appears is a sign the site has more templates than it has kinds of pages. In a Next.js build the header and footer live in one layout that wraps every route, so there is no assignment to lose and no rule to outrank, and the custom CMS only exposes the content inside them. If template confusion returns every few months, that simpler arrangement is worth weighing against another cleanup.
| On Divi today | On Next.js with a custom CMS | |
|---|---|---|
| What you keep updated | WordPress, the theme, its builder and every bundled plugin, all in step | Nothing on a schedule. There is no theme or plugin stack to fall out of step |
| How a page is served | Built from the database on each visit, through the theme and its builder | Built ahead of time and served as finished files from servers near the visitor |
| How you edit it | A general-purpose builder with every option the theme ships | A CMS built around what your business actually changes: services, prices, photos, posts |
| What can break it | An update to any one of those parts, or a license that lapses | A change someone makes on purpose, tested before it goes live |
Your content, your addresses and your rankings come with you: every page is moved, every old address is redirected, and you get a login to an editor that only shows what you need. A repair is still the right call for many sites, and we will say so when it is.
Want this fixed on your Divi site?
Tell us what you are seeing. We look at the site, tell you plainly what is wrong and what it takes, and quote a fixed price before any work starts.
Which of these sounds like you? (pick any)
Frequently asked
Because the header was added to a template assigned to All Pages, and posts are not pages. Put the header in the Default Website Template, or add All Posts and the archive types to that template's Use On list. The same gap explains a shop or search page that ignores the design.
It is still saved. A custom body takes over the content area, and the page's own content shows only where a Post Content module is placed inside that body layout. Add the module, save the Theme Builder and the content returns.
A global header is one layout shared by every template that uses it, so an edit in one place changes all of them. A custom header belongs to a single template. Trouble starts when a global header is detached on one template for a small tweak and then forgotten, leaving two headers that drift apart.
Broad rules such as All Pages generally carry over. Rules that name a specific page or post may not, because that page is a different record on the new site. After any import, open each template's settings and confirm what it is assigned to before trusting the front end.
Keep reading
- ServiceDesign & Layout FixesOverlapping text and broken spacing tell a customer you do not sweat details. We fix the glitches so the site looks as competent as the business.
- ServiceBest WordPress DesignA WordPress site that looks the part and does the work. Custom design, fast pages, and a layout built to turn visitors into customers.