My Genesis Starter Theme

I build custom Genesis child themes for most of my clients. Rather than starting from an existing StudioPress theme, I use my own starter theme: EA Genesis Child.

What is a starter theme

A starter theme is a base upon which you can build your own custom theme. They usually have minimal styling and contain the features and functionality you use on every site you build.

I recommend you check out StudioPress’ starter theme, Genesis Sample, in addition to mine. After you’ve built a few Genesis sites you’ll likely build your own starter theme structured to your liking.

My starter theme includes

SASS for Styling

Rather than one long stylesheet, my styles are broken into smaller SASS partials for a cleaner organization. I also use variables for key settings (colors, column widths), mixins for helper functions, and dynamically generate styles.

Gutenberg Ready

The theme includes theme support for new Gutenberg features. It also compiles a separate stylesheet so the editor matches the frontend display.

Accessible

Genesis can be made more accessible by enabling the accessibility features.

Template partials for archive pages

See this article for more information.

Login Logo

The site login form displays the client’s logo (example)

Miscellaneous performance improvements

Like minimizing classes on nav menus and posts and removing avatars from comments.

Download Now

My starter theme is available for free on GitHub.

Click here

Bill Erickson

Bill Erickson is a freelance WordPress developer and a contributing developer to the Genesis framework. For the past 14 years he has worked with attorneys, publishers, corporations, and non-profits, building custom websites tailored to their needs and goals.

Ready to upgrade your website?

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

Let's Talk

Reader Interactions

Comments

  1. Milton Olave says

    Thank you very much for the theme, just bought a Genesis plan, and what was needed, but not PHP tratere customize it.
    thanks

  2. Matt says

    Hi Bill, just wondered if this theme was up to date with Genesis 1.9.2 and WP 3.5 / 3.6?

    Thanks,
    – Matt

    • Bill Erickson says

      Yes it is up to date. I’m currently rebuilding it to work with Genesis 2.0 (HTML5)

      • Richard Buff says

        Will your new base child theme for Genesis 2.0 come out at roughly the same time as Genesis 2.0? I’m mostly curious how you’ve organized and stripped down the stylesheet. I don’t suppose the CSS is something you could give a preview of? 🙂

            • Bill Erickson says

              No, BE Genesis Child has not been updated for HTML5. I’ve left it as-is for developing on non-HTML5 versions of Genesis.

              Jared Atchison and I have an HTML5 base child theme we’re working on but it’s currently private. It’s really just the stylesheet from Genesis with slight modifications, and the same basic code of BE Genesis Child.

  3. Raja says

    Thanks Bill for sharing this base child theme, hope you’ll release such base child theme for latest Genesis 2.0 as well.

  4. nextrollout says

    hi bill, is this theme responsive. actually i want a theme which could work in mobile devices as well. thanks

  5. Craig Grella says

    Bill,

    Just curious..

    In your setup uou remove several of the genesis widgets, enews, feautured poat, pages, etc.

    Are there are other plugins or widgets you prefer or are you creating that functionality with code too?

    • Bill Erickson says

      It all depends on what the client needs. If they just need a simple list of posts, I’ll use Display Posts Shortcode. If it’s something more custom (ex: upcoming events with a little calendar icon for the date) I’ll build a custom widget for it.

      • Craig Grella says

        Okay thanks.
        I’ve used these widgets often. Any particular reason you delete them? Just prefer others or are they not good to use?

        • Bill Erickson says

          Well I really don’t like how Featured Posts and Pages are written. They use query_posts() which messes with anything that modifies the main query (like my Genesis Grid plugin).

          But for the most part, it’s because I only include widgets that are necessary for the client and tested by me. I don’t like testing all the possible options they have with these plugins since 99% of the time they won’t use them.

  6. Thomas Bock says

    Bill,

    Do you prefer to use a ‘setup’ function to load your site-wide functions or use the way Genesis does by starting with init.php. I have seen arguments for both.

    Thanks

    • Bill Erickson says

      Definitely a setup function. It just seems wrong to include a file from another theme, especially since WordPress will do that for you once your functions.php file has loaded.