If you’ve ever set a static homepage in WordPress Full Site Editing (FSE) and wondered why your carefully crafted “Home” page content doesn’t actually show up on the live site… congratulations! You’ve met the Front Page template, the boss battle of block themes.
- You can’t delete it (in most themes).
- You can’t rename it (in most themes).
- It doesn’t care about your static page settings (it REALLY doesn’t care).
But you can make it behave.
And you can do it without a child theme or hacking theme files.
Here’s the fix I wish someone had handed me before I spent a ridiculous amount of time yelling at my screen.
The Problem in Plain English
Even if you:
- Set a static home page in Settings > Reading,
- Design a gorgeous “Home” page,
- Assign a separate blog page.
The live site still stubbornly uses the Front Page template from your block theme, ignoring your page content completely.
Why? Because when a front-page.html
file exists in a block theme, WordPress automatically gives it top priority in the template hierarchy.
It basically says:
“Thanks for your input, human, but I’ll be running this homepage now.”
How I Figured It Out
I actually liked the front page template layout in the theme I downloaded. I just wanted a “real” Home page that I could edit like a normal page instead of going through the template editor every time.
So here’s what I did:
- I opened the Front Page template, clicked the little 3 dots Options doohickey to View Code, and copied all the code.
- Then I created a new “Home” page, switched its editor to access the page’s Code Editor, and pasted the template code in.
- I exited the code editor view, tweaked the layout a bit (because it wasn’t quite full-width like the original), saved it, and set it as the homepage in Settings > Reading.
- Feeling all clever and shit, I edited the new Home page, made a small change, hit save, and refreshed the live site.
Nothing. Changed.
The front end didn’t reflect my edit at all.
Then I went back to the Front Page template, made the exact same change there, saved, and boom! It showed up immediately. That’s how I learned, with crystal clarity, that my beautiful “real” Home page was being completely ignored.
Even though WordPress made it look like my page was the homepage in the Settings panel, the theme’s front-page.html
was still the one running the show.
The Fix (No Child Theme Required)
Since we can’t delete or rename the Front Page template from the Site Editor (at least that wasn’t possible in the theme I was working with), the trick is to gut it and turn it into a pass-through for your Home page content.
Here’s how:
- Go to Appearance > Editor.
- Click Templates > Front Page.
- Delete everything inside the Front Page editor screen.
- Click the 3 dots Options doohickey (top right) and click on Code Editor.
- Paste in this minimal structure:
<!-- wp:template-part {"slug":"header"} /-->
<!-- wp:post-content /-->
<!-- wp:template-part {"slug":"footer"} /-->
- Save.
- Then go to Settings > Reading:
- Set Static Page as your homepage.
- Choose your actual “Home” page that you manually created under Pages.
- Set your Blog page if you’re using one. I always create a blank page titled Blog and use it here. Since it’s blank, it automatically places the blog posts archive there.

Result:
- The Front Page template technically still exists, but it no longer controls the layout.
- It simply renders your page content, header, and footer.
- Editing the “Home” page now edits what appears on the live site.
- Your Blog page works normally.
Important Note: Resetting Isn’t Nuking
Clicking “Reset” on the Front Page template’s 3 dot options menu doesn’t blank it out. It just restores the original layout the theme author shipped. That layout will happily keep overriding your Home page.The real way to neutralize it is to manually delete all of its content and replace it with the code we already mentioned:
<!-- wp:template-part {"slug":"header"} /--> <!-- wp:post-content /--> <!-- wp:template-part {"slug":"footer"} /-->
This declaws the Front Page template and turns it into a simple pass-through for your page content.
Theme Update Safe: Because your edited template lives in the WordPress database (not in the theme’s files), theme updates won’t overwrite your fix. It’ll stay exactly as you set it with no child theme needed.
Why This Works
When WordPress detects front-page.html
, it uses it no matter what.
But the Post Content block says:
“Okay fine, if you insist on being in charge, then at least show the actual page content.”
That flips control back to your Home page without requiring a single file change.
- No child theme.
- No renaming trickery.
- No fake “Home” pages.
- No cursing at your monitor (… well, at least less of it).
Why This Deserves a Blog Post
There are countless confused forum threads from people trying to:
- Delete the Front Page template (usually can’t),
- Use page-slug templates (complicated and often ignored),
- Override it with static pages (nope, doesn’t work),
- Or build unnecessary child themes just to reclaim the homepage.
This tiny tweak solves it in one step and works with almost any modern block theme.
If, however, you have a different or better method, please let us all know. I’m always keen to learn more tips and tricks.
To Reiterate: Final Code Snippet
<!-- wp:template-part {"slug":"header"} /-->
<!-- wp:post-content /-->
<!-- wp:template-part {"slug":"footer"} /-->
- Put that in your Front Page template (using Code Editor), replacing whatever was there before.
- Hit save.
- Watch the Front Page Template hijacker bow to your Home page.
Then reward yourself in whatever way you like. I’d suggest a cookie, some chocolate, or maybe a margarita, but that’s just me. You do you. 🙂
Leave a Reply