Modifying a Theme

Once you’ve picked a theme, you’ll probably want to tweak some colors or add a logo to make your site consistent with your nonprofit brand. There are a variety of ways to do this and a few to avoid!

Ways to modify a theme listed below are ordered from easiest to hardest. You should use them in that order in most cases.

What Not to Do: “Hacking” your theme

If you know how to edit CSS, HTML, or PHP files (or read instructions on how to do it!), you may be tempted to modify the files that come with your theme. Many tutorials suggest to “add code to your functions.php file,” “edit your style.css file,” or use the Appearance > Editor feature. DO NOT DO THESE THINGS!

Should your theme ever have an update after doing those things, you will either:

  1. Lose your changes.
  2. Not update your theme.

There are plenty of good ways to tweak your theme listed below.

Theme Options

The first, best, and easiest way to modify your theme is with “Theme Options” provided by the theme. Even if you want to modify things that can’t be changed with theme options (see below), still use any provided options first. Doing it this way means others can still change these settings in the future, and it’s probably faster anyway.

The number, type, flexibility, and location of theme options varies widely. You should consult your theme’s documentation if possible to find where they are. The most common location for theme options are:

  1. Appearance > Customize > {Theme Options}
    • Or “Customize” in the top admin bar
  2. Appearance > {Theme Options}
  3. {Theme Options} in the left-side admin menu

“{Theme Options}” is a placeholder for the actual menu item title. It will likely be something similar like “Theme Options,” “Options,” or “{Name of Theme} Options”.

If you plan to make a child theme (see below), set that up first as your Theme Options will not transfer from “parent” to “child theme.”

Custom CSS

If you know CSS and only need to tweak a few visual things (colors, margin/padding, backgrounds, etc.), you may only need to write some custom CSS. This is easier than ever, now that WordPress provides a custom CSS feature. Just go to Appearance > Customize and open the Custom CSS “panel.”

If you receive support from a theme or plugin author who tells you you’ll need some Custom CSS, this is how to do it!

Some themes come with a “Custom CSS” field to enter CSS code and plugins offer similar features. However, I recommend you use the Custom CSS feature that comes with WordPress.

If you use Jetpack, turn on the Jetpack Custom CSS module to enable improvements to the Custom CSS editor in WordPress.

Child Themes

If you need to make big changes to your site like adding custom templates, modifying the layout, changing the content in the header or footer, etc., then you probably need a Child Theme. Child theme’s are the WordPress way to safely change a prebuilt theme that you purchased or downloaded.

Rather than changing the code in your original theme, a child theme lets you selectively override and add to the files in your “parent theme”. For instance, if your theme was perfect except for the search results page, your child theme could do nothing but override that single template with your changes.

The beauty of a child theme is that if your parent theme updates, you don’t stand to lose any of your changes, because your child theme is completely separate. Better yet, you inherit any of the updates to the parent theme for files you haven’t modified.

Still looking for just the right theme? Check out the list of recommended WordPress themes for nonprofits.