Written by on

Customizing Theme Menu with Filters

Hello everyone. Chris Jean, iThemes’ very own resident code monkey, here with some exciting news!

Many of our customers have asked for the ability to more easily modify our themes. Recently, I’ve had the opportunity to go through some of our code and add the ability to customize certain parts of the theme easily by using filters.

These initial changes are going to be most useful to developers that use our themes to develop sites for clients, but they can also be used by anyone that would like to customize the back-end of our themes. With these new filters, you can modify the name of the main theme tab, change the “Start Here” text of the first theme sub-menu, and change the URL used for the content of the Start Here page.

In order for you to successfully make use of these new filters, please ensure that your theme has the latest version of the lib/tutorials code. The current version as of this writing is 1.1.2. You can check the version in the lib/tutorials/tutorials.php file.

Modifying the Theme Menu Name

With this latest version of the lib/tutorials code, all the themes are now standardized to use “My Theme” for the main theme menu name. This should help make the experience of using our themes more consistent as you change from theme to theme and should reduce confusion on some of our video tutorials going forward.

You can easily change the theme menu name by using the it_tutorials_top_menu_name filter. For example:

function it_modify_top_menu_name( $name ) {
    return "Chris' Theme";
add_filter( 'it_tutorials_top_menu_name', 'it_modify_top_menu_name' );

A good place to put this code is in the theme’s functions.php file.

Modifying Start Here Menu Name and Page Content

The first link under the theme menu has the text “Start Here”. This page is used to link people to tutorials so that they can more easily use the features of the themes. The content shown on the Start Here page is actually an external HTML page that is shown inside of an iframe.

Other developers or end users may have other uses for this page, so two filters were added: a filter to modify the menu link text (it_tutorials_menu_name) and a filter to modify the URL for the content shown inside the iframe (it_tutorials_filter_url). The following example shows an example of using these filters.

function it_modify_tutorial_menu_name( $name ) {
    return "Useful Links";
add_filter( 'it_tutorials_menu_name', 'it_modify_tutorial_menu_name' );

function it_modify_tutorials_url( $url ) {
   return "http://yourdomain.com/helpful_links.html";
add_filter( 'it_tutorials_filter_url', 'it_modify_tutorials_url' );

As before, a good place for this code is in the theme’s functions.php file.

Future Themes, Features, and Filters

These filters aren’t the only ones that will be added. Eventually, many of the existing features will have similar filters added to them to enable some basic customization of the theme back-end.

All current development is being done with attention to areas where other developers or users would like to make changes to the way a theme works. I look forward to providing everyone with more options in customizing our themes without having to go digging around in the code.

If you have any ideas for hooks or features that you’d like to see in our themes, you can send them directly to me at chris@ithemes.com or post about them on our forum.


  1. There is a typo in the code, an ‘s’ missing in this line:

    function it_modify_tutorial_url( $url ) {

    To make it work, change tutorial_url in tutorials_url



Save 40% off site-wide through December 31! Get the coupon