I've recently asked a question about front-page.php and home.php usage (How to setup front-page.php and home.php) and thought it will clear things out, but instead I realized(while testing/playing with the code) that I don't necessarily need to declare "Site Front Page" in "Settings → Reading", instead I tried to use the simple as it gets theme, by declaring style.css with the "Theme Name" and setting blank Index, header and footer php files.

So now I am really confused, as I don't see why would I need to declare front-page if I can manage this through index.php and set static content inside of it.

I'm probably missing here something very important and I would appreciate it if someone would explain this in simple language

closed as primarily opinion-based by Michael, EAMann Mar 3 '18 at 0:20

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.


It mostly boils down to configurability for themes. While you are comfortable editing template files not everyone is. So looking at the template hierarchy you can see the following:

When there is a front-page.php template it kind of ignores any setting in "Settings → Reading". (It still loads different content, but the template is forced)

But if you want to leave the choice of how the front page should behave/look to the user you can instead have a home.php which is only used if the user chooses to display posts on the front page. If he chooses to display a page this is respected as well.

I think if you look at the template hierarchy things will clear up.

Not the answer you're looking for? Browse other questions tagged or ask your own question.