Don’t use the Genesis Blog Page Template

(Short answer: it’s not the main query, so customizations to the query won’t work. Make your blog the WordPress way, using Settings > Reading).

Genesis has been under development for quite a few years now. Given it’s history and large user base, there’s a few old features that would be removed, given the opportunity, but are needed for backwards compatibility – so people who have used them in the past can keep using them.

The biggest one (in my opinion) is the blog page template.

When you first install WordPress, your homepage lists your most recent blog posts. If you’d like a static homepage and to move your blog to a subpage, you can do so in Settings > Reading.

WordPress looks at specific files for these different pages. home.php is used for your blog posts listing (whether that’s your homepage or a subpage). front-page.php is used for the homepage of your site, whether you want blog posts or a static front page.

So, if you want a static homepage and your blog on a subpage like /blog, create the pages “Home” and “Blog”, go to Settings > Reading and set those as the appropriate pages to be used. If you’d like to create a template file to control the homepage, use front-page.php. If you’d like to create a template file to control the blog, use home.php.

Many of the older StudioPress child themes incorrectly use home.php for their static homepage. I’m not sure the reason, but my guess is they wanted to save people the step of going to Settings > Reading; when the theme was activated, the homepage was already a static homepage. The problem here is now you can’t have a blog. If you created a page and set it as the blog in Settings > Reading, it would use the home.php file which is now a static homepage.

Their solution to this was to create a page template that lists blog posts. The problem here is the blog posts are listed in a custom loop, not the main loop of the page (the main loop is the page’s content, which is replaced with this custom loop). This means plugins and other code that are designed to modify the main blog do not work.

What I recommend:
1. Never use the blog page template.
2. If you’re using a StudioPress theme that has home.php in it and it’s used for a static homepage, rename it to front-page.php. If you’re using one of the newer HTML5 themes, you should be fine. It’s only the older ones that have this issue
3. If you’re building a child theme for your client, exclude the Blog page template

Bill Erickson

Bill Erickson is the co-founder and lead developer at CultivateWP, a WordPress agency focusing on high performance sites for web publishers.

About Me
Ready to upgrade your website?

I build custom WordPress websites that look great and are easy to manage.

Let's Talk

Reader Interactions

Comments are closed. Continue the conversation with me on Twitter: @billerickson

Comments

  1. Jamaluddin Rahmat says

    Hi Bill,

    Your published post was 1 year ago.
    What do you think about Genesis right know?

    Still under development or…. ???

    • Bill Erickson says

      I still use Genesis on every site I build. It isn’t updated very often because it’s a mature framework.

  2. Lindsay says

    Hi Bill,

    It’s me again from your page on An Easier Grid Loop.

    My home page no longer loads — it is blank. Here’s what I’ve done:

    I renamed “home.php” –> “front_page.php”
    I renamed “blog_tempate” –> “home.php”

    I went to my Readings settings and set the home page as static with the Posts Page as “blog” and the Front Page as “Home.” On both the “Home” and “Blog” page I set the template to “Default.”

    I want my front page to display all the widgetized areas that came with my theme: Ally. What am I doing wrong or what do I need to tweak?

    Thank very much for your support!

      • Lindsay says

        Hi Bill,
        After many hours of frustration, a friend pointed it out. I had a typo in how I spelled “front_page.” Now the plug-in works beautifully. Thanks for your help and for the ongoing support! Much appreciated.

  3. Rose says

    Hi Bill. Your article got the blog page working, but now my static home page is not working. Here’s what’s going on…
    Settings/Reading: Static Front Page
    Front page: Home
    Posts page: Blog

    The site was originally built using a widgetized home page, but now has a real home page. Putting in a real home page made the blog display the old widgetized home page. I renamed home.php to front-page.php and the blog works just like it should. However, now the home page displays the old widgetized home page and not the page that is set in Settings/Reading as the static front page.

    I’m kind of lost here, trying to figure out what to do next. Any help you can give me would be great! This is a live site and the client needs the new front page to work.

    • Bill Erickson says

      If you’re not using the widgetized homepage, either delete that file (now called front-page.php) or rename it to anything other than those two names (ex: old-home.php).

      home.php is what WordPress uses for your blog’s homepage. So when you had the widgetized page named home.php, that displayed instead of the blog.

      front-page.php is what WordPress uses to display the front page of your site. So when you had the widgetized page named front-page.php, that displayed instead of your homepage.

      • Rose says

        Thanks for the quick response! I totally don’t understand it, but I renamed the file and now there is no home.php or front-page.php file in my theme folder, and the site works just perfectly! Thank you again!

  4. Johnny says

    Hello i have a question that you may know the answer to! I am using the genesis and the executive pro theme. My logo is correct on the whole site and is transparent. The only page it is not is on my blog page, which I have assigned via Reading Settings. It shows a background on it that i am using on much of my site, like in the menu, titles areas and so fourth! I can not for the life of me figure out how to correct the issue. I figured if anyone in the world that may know would be you! Thanks so much for sharing so much experience also!
    Thanks Johnny

  5. Johnny says

    Thanks so much Bill.. that css did the trick!
    Thanks Tony, no probs,…
    The only other issue I am having with Genesis is my featured page widget!
    It isn’t showing the title or text on the homepage, it does show the title on all other pages but not the text!
    I am using it in the footer on the right.
    Executive Pro ThemeVersion: 3.1.2
    and
    GenesisVersion: 2.1.2
    I wonder if there is a bug that is related to the versions I am using. I have checked my css to see if there is an issue, but it seems fine. I can’t figure this one out either!
    I know I found a bug on another clients site using a newer version genesis with Executive Pro ThemeVersion: 3.1.2 theme and had to revert back to the older version Genesis. His Blog post were not showing on his blog page!
    Any help is much appreciated!

  6. Ashley Rader says

    This is great info – thank you Bill! Question for you, based upon this information. Is there a way to show a description or some custom content above the posts display? Almost like using a pagebuilder type layout where I can do an intro paragraph and some graphics and then show the blog post listings below that? Not sure how I can do that without modifying functions when using the front page blog post template as part of the static homepage or static blog page…

  7. therarecommoner says

    You have definitely struck a cord with this article – looking at the long long comments. Kudos to you for sticking it out and engaging with your commenters. The problem description you provide “The problem here is now you can’t have a blog. If you created a page and set it as the blog in Settings > Reading, it would use the home.php file which is now a static homepage.” was pretty hilarious for me as I had to learn this through experience. I was flabbergasted and was JUST beginning to look into how on earth to dig about the custom loops to get what I wanted. This is a much more expected workflow and thank you for posting on it. Now to dig into the comments to learn the common issues when dealing with this framework.

  8. Marijn says

    Hi Bill, thanks again for the great content. I’m sorry to bother you with this probably stupid question .. I just changed my site to magazin pro again and can’t figure it out. I have my static homepage and blog page set up in settings-reading. Then uploaded a random image in my homepage but it still shows the blog template with sidebar (my main settings are full width). I just want to have a couple of images on my homepage which I can redirect to other pages.
    Is it a bug or am I totally missing something here?

    • Bill Erickson says

      I recommend you contact StudioPress support. I don’t have experience with all of their themes so can’t provide specific guidance.

  9. Phil says

    Hi Bill
    A great article. I am new to WP and was confused about when and where templates and settings affected outputs.
    What sort of settings can I put in home.php? Would this be a good place to narrow the blog pages from full width? I want the setting to apply to all blog pages.

  10. Phil says

    I am using Altitude Pro child theme and have increased site-inner to make most pages full width. On the blog page I want to run about 70% width + have sidebar with calendar, categories etc