WP Smith

Creating WordPress & Genesis Websites Since 2010

  • Home
  • About
  • Services
  • Blog
  • Contact

Mar 02 2011

Remove Post Title and Page Title from Genesis Child Theme (with or without Post Formats Support)

The same function controls the title for posts and pages; however, to remove the title from one or the other is different. As always open the functions.php in your favorite html/text editor or at Appearance > Editor (or in MS, found under Network Admin). Scroll to the bottom of the page and paste the code below into the functions.php file.

Remove Post Title from Posts

To remove all titles from posts, simply add the following:
[php]//REMOVE POST TITLE
remove_action('genesis_post_title', 'genesis_do_post_title');[/php]

With the introduction of Post Formats in WordPress 3.1, depending on its format, you may want to remove the post title. As it currently stands, has_post_format($arg1, $arg2) can only take a string in $arg1 and $arg2 is optional (and is $post_id), and the supported post formats from WordPress 3.1 are: aside, chat, image, link, quote, status, video, audio, and gallery. So to remove post titles from posts with these formats, simply add the following:
[php]if ( has_post_format( 'aside' ) || has_post_format( 'chat' ) || has_post_format( 'image' ) || has_post_format( 'link' ) || has_post_format( 'quote' ) || has_post_format( 'status' ) || has_post_format( 'video' ) || has_post_format( 'audio' ) || has_post_format( 'gallery' ) ) {
remove_action('genesis_post_title', 'genesis_do_post_title');[/php]

Remove Post Title from Pages

To remove page titles from specific pages, simply add the following:
[php]//REMOVE PAGE TITLE
add_action('get_header', 'child_remove_page_titles');
function child_remove_page_titles() {
$pages=array();
if (is_page($pages)) {
remove_action('genesis_post_title', 'genesis_do_post_title');
}
}[/php]

Or, to remove the title from the home page, simply add the following:
[php]//REMOVE PAGE TITLE FROM HOME PAGE
add_action('get_header', 'child_remove_page_titles');
function child_remove_page_titles() {
if (is_home()) {
remove_action('genesis_post_title', 'genesis_do_post_title');
}
}[/php]

Written by Travis Smith · Categorized: Genesis

StudioPress Premium WordPress Themes     WP Engine Managed WordPress Hosting

What can I do for you!?

Custom Development

We develop plugins by determining both business/functional and technical requirements, following WordPress development best practices, and using agile methodology to ensure you get the best solution.

Consulting

Have questions? Need a reliable developer to consult? Please contact us today!

Customized Theme

We can customize your theme or child theme, or create a child theme for you based on your needs while enhancing the performance of every individual attribute.

Customized Plugin

We can customize your plugins, extend plugins (e.g., Gravity Forms, Jetpack, Soliloquy) based on your needs ensuring security, performance, and positive business impact.

Contact Us

About Travis Smith

As a WordPress enthusiast, developer, and speaker, Travis writes about what he learns in WordPress trying to help other WordPress travelers, beginners and enthusiasts with tutorials, explanations, & demonstrations.

Comments

  1. Rob Holmes says

    May 3, 2011 at 6:30 pm

    Thanks man! This post helped me a lot. I’m loving Genesis, but need a nudge here & there. Much appreciated.

    Reply
  2. Helena says

    September 3, 2011 at 1:05 am

    Thanks very much. I’ve seen the example for ONE post (page) but never how to do multiples!

    Reply
  3. Harmonie Ponder says

    November 2, 2011 at 2:53 am

    Use this but change the page id accordingly

    //REMOVE PAGE TITLE FROM PAGE ID 6
    add_action(‘get_header’, ‘child_remove_page_titles’);
    function child_remove_page_titles() {
    $pages=array();
    if (is_page(‘6’)) {
    remove_action(‘genesis_post_title’, ‘genesis_do_post_title’);
    }
    }

    Reply
  4. gulflee says

    March 8, 2012 at 3:05 am

    it dosnt work for me, i m trying to make a custom page template and try to remove all meta and title but the meta had removed but not it just dosnt remove the title?any clue, thank you
    remove_action( ‘genesis_post_title’, ‘genesis_do_post_title’ );
    remove_action( ‘genesis_after_post_content’, ‘genesis_post_meta’ );

    Reply
    • Travis Smith says

      March 14, 2012 at 4:01 pm

      Your child theme may have moved those functions or there is another issue. Have you tried using my Genesis Hooks plugin to see where the functions may be located?

      Reply
  5. adam mclane says

    July 11, 2012 at 2:56 am

    Just wanted to say thanks for this. Totally helped me solve my problem tonight in a jiffy!

    Reply
  6. Jordan says

    July 30, 2012 at 6:00 pm

    Your code for the “REMOVE PAGE TITLE FROM HOME PAGE” actually worked for me. Other sites had code for this but it would always remove all the titles throughout the site. I switched to is_front_page for a static homepage I am using and it worked great. I do not want to use a template for the homepage on this so that editing for the client is simple.
    I tried to use a simple if statement, but it did not work at all.
    Thank you!

    Reply
  7. Nate Shivar says

    December 14, 2012 at 4:51 pm

    A current/maybe former Thesis user here (met at WordCamp) trying out my first site with Genesis. Thanks for the resource! Aside – your affiliate redirect didn’t work smoothly from your sidebar ad…hopefully it still went through.

    Reply
  8. Henrietta says

    April 11, 2013 at 12:11 am

    Just what I was looking for! Thanks!

    Reply
  9. Vanjo says

    June 24, 2013 at 12:33 pm

    Hi Travis. Thanks for the information. Will these remove the post title in the archives too? I’m trying to search for a code that will remove the title only in posts (is_single()), while retaining the post titles in archives and blog pages. Can you help me with that, please?

    Reply
  10. JenP says

    October 14, 2013 at 12:11 pm

    Thought I would add an update for Genesis 2.0 if anyone is still having problems and has upgraded – the hooks have changed for HTML5 – genesis_post_title is now genesis_entry_header. So, removing the title from the homepage would look like this
    if (is_front_page()) {
    remove_action(‘genesis_entry_header’, ‘genesis_do_post_title’);
    }
    Ref: http://www.carriedils.com/genesis-2-0-hooks/

    Reply

Leave a Reply Cancel reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.

  • Twitter
  • Facebook
  • LinkedIn
  • Google+
  • RSS

Copyright © 2025 � WP Smith on Genesis on Genesis Framework � WordPress � Log in