When a theme has the front-page.php
template, it will take over regardless of what you set in the admin pages to be your front page. 1 This means you have a couple of options:
- Create a page template with your loop and styles that are currently part of
front-page.php
, apply that template to a new page you create in WP, then assign that new page to be your static front page in the Admin settings (Settings → Reading → Front page displays → Front page).
Then create a page with your regular loop and styles for your blog index page, assign it to a new page in WP, and set it as the front page for your blog posts (Settings → Reading → Front page displays → Posts page). - Consider adding the
home.php
template to the mix so that it handles the “regular old posts page.” 2
I’d recommend #2, since it avoids having to create 2 more pages inside WP that are just there to trigger the template files. Since the loader already looks for the front-page.php
and home.php
templates, those pages will load faster if the templates are in there and used properly.
UPDATED 1/16
Okay, here’s a bit more background…
- If you have the
front-page.php
template and “Your latest posts” selected, the home page of your site will use thefront-page.php
template. - If you have the
front-page.php
template andhome.php
and “A static page (Front page)” selected but nothing selected for “Posts page”, the home page of your site will use the content of the page you selected with thefront-page.php
template andindex.php
for posts (ignoringhome.php
). - If you have the
front-page.php
template andhome.php
and “A static page (Front page)” selected and a “Posts page” selected, the home page of your site will use the content of the page you selected with thefront-page.php
template, and the content of the page you selected with thehome.php
template.
It can get a bit complex, especially since there’s so much flexibility involved. It was something I had to go back and play with again just to refresh my understanding.
The main purpose is to have something distinct on the front page (completely different layout, different colors, different header, etc.) while having the option to swap out the home page content just by selecting the page you want to use. You can also have the main blog page slightly different than the rest of your single posts or pages, which is where the home.php
comes into play.