A Guide To Customizing The Thematic Theme Framework

Oh, yuck. This is the old, busted guide. Make sure you check out the new, wiki-powered, Thematic Guide.

Default Thematic CSS Styles

The following typographic classes are styled by default and can be used in your post content.

<blockquote class="left">
Floats a pull-quote to the left of your content.

<blockquote class="right">
Floats a pull-quote to the right of your content.

Adding a Home Link

A “Home” link can be added to your menu by filtering the default menu arguments.

// Adds a home link to your menu
// http://codex.wordpress.org/Template_Tags/wp_page_menu
function childtheme_menu_args($args) {
    $args = array(
        'show_home' => 'Home',
        'sort_column' => 'menu_order',
        'menu_class' => 'menu',
        'echo' => true
    );
    return $args;
}
add_filter('wp_page_menu_args','childtheme_menu_args');

Thematic Theme Hooks and Actions

The following theme hooks can be used to modify Thematic through your Child Theme functions.php file or even a custom plugin.

thematic_before()
Located in header.php just after the opening body tag, before anything else.

thematic_aboveheader()
Located in header.php just before the header div.

thematic_header()
This hook builds the content of the header div and loads the following actions: thematic_brandingopen(), thematic_blogtitle(), thematic_blogdescription(), thematic_brandingclose(), thematic_access().

thematic_belowheader()
Located in header.php just after the header div.

thematic_abovecomments()

thematic_abovecommentslist()

thematic_belowcommentslist()

thematic_abovetrackbackslist()

thematic_belowtrackbackslist()

thematic_abovecommentsform()

thematic_show_subscription_checkbox()

thematic_belowcommentsform()

thematic_show_manual_subscription_form()

thematic_belowcomments()

thematic_abovemainasides()

thematic_betweenmainasides()

thematic_belowmainasides()

thematic_abovefooter()

thematic_after()

Removing Thematic Actions

Any Thematic action can be removed by building off of the following code snippet in your Child Theme functions.php.

// Remove default Thematic actions
function remove_thematic_actions() {
    remove_action('thematic_hookname','thematic_actionname',optionalpostitionnumber);
}
add_action('init','remove_thematic_actions');

Thematic Theme Filters

The following theme filters can be used to modify Thematic through your Child Theme functions.php file or even a custom plugin.

thematic_create_doctype()

thematic_doctitle()

thematic_create_contenttype()

thematic_canonical_url()

thematic_use_excerpt()

thematic_use_autoexcerpt()

thematic_create_description()

thematic_show_description()

thematic_create_robots()

thematic_show_robots()

thematic_create_stylesheet()

thematic_head_scripts()
Outputs the links to jQuery plugins included with Thematic. If you don’t like drop-down menus, outright killing the drop downs in your Child Theme is actually pretty easy.

// Filter away the default scripts loaded with Thematic
function childtheme_head_scripts() {
    // Abscence makes the heart grow fonder
}
add_filter('thematic_head_scripts','childtheme_head_scripts');

thematic_dropdown_options()
Filters the link to thematic-dropdowns.js. Overriding and adding to the default drop-down options with your Child Theme is pretty easy too—once you know how to do it.

// Filter the default drop-down options
// http://users.tpg.com.au/j_birch/plugins/superfish/#options
function childtheme_dropdown_options($dropdown_options) {
    return <<
    jQuery.noConflict();
    jQuery(document).ready(function(){ 
        jQuery("ul.sf-menu").supersubs({ 
            minWidth:    12,                                // minimum width of sub-menus in em units 
            maxWidth:    27,                                // maximum width of sub-menus in em units 
            extraWidth:  1                                  // extra width can ensure lines don't sometimes turn over 
                                                            // due to slight rounding differences and font-family 
        }).superfish({ 
            delay:       800,                               // delay on mouseout 
            animation:   {opacity:'show',height:'show'},    // fade-in and slide-down animation 
        }); 
    });
    
    
EOD;
}
add_filter('thematic_dropdown_options','childtheme_dropdown_options');

thematic_show_rss()

thematic_show_commentsrss()

thematic_show_pingback()

thematic_show_commentreply()

thematic_time_title()

thematic_time_display()

thematic_sidebar()

thematic_postheader()

thematic_postfooter()

thematic_commenter_link()

thmfooter_theme_link()
If you’re a theme developer looking to publicly release your Thematic Child Theme you can add a link to your Child Theme release page in the [theme-link] shortcode. Here’s the code snippet you’ll need in your Child Theme functions.php:

// Add a link back to your Child Theme release page in the [theme-link] shortcode
function childtheme_theme_link($themelink) {
    return $themelink . ' & Awesome Theme';
}
add_filter('thematic_theme_link', 'childtheme_theme_link');

That example will return both the Thematic link and your link. Of course, you can always just return a link to your Child Theme release page alone:

// Add a link back to your Child Theme release page in the [theme-link] shortcode
function childtheme_theme_link($themelink) {
    return 'Awesome Theme';
}
add_filter('thematic_theme_link', 'childtheme_theme_link');

10 thoughts on “A Guide To Customizing The Thematic Theme Framework

  1. Pingback: Comparisons Between Most Popular Theme Frameworks

  2. Pingback: Hello Thematic Users!

  3. Pingback:   WordPress Theme Framework by Fishcakes Blog

  4. Pingback: 9 Useful Websites for Thematic Child Theme Development

  5. Pingback: Thematic Framework: Remove a Thematic action « My Graphic Friend's blog

  6. Pingback: Daily Digest for March 23rd

  7. Pingback: Lifestream Catch-up Post

  8. Pingback: Dissecting Astatic – Thematic Child Theme Tutorial | Theme Lab

  9. Pingback: wordpress dev » Blog Archive » Dissecting Astatic – Thematic Child Theme Tutorial

  10. Pingback: Why and how to use the WordPress Theme Frameworks | Wordpress ArenaWordpress Arena

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>