Beginner's Guide for WordPress - Start your WordPress Blog in minutes.
Choosing the Best
WordPress Hosting
How to Easily
Install WordPress
Recommended
WordPress Plugins
View all Guides

How to Hide Title for Selective WordPress Posts and Pages

Last updated on by
Special WordPress Hosting offer for WPBeginner Readers
How to Hide Title for Selective WordPress Posts and Pages

In our post about how to hide widget titles, we had an interesting comment that presented a solution to hide title on selective single post and pages. We thought that it might be useful for some people. In this article, we will show you how to hide title for selective WordPress post and pages. We will also show you how to hide title of all WordPress posts and/or pages.

Hide Titles for Selective Posts and Pages

Do you want to hide titles for selective posts and pages without editing a single line of code? Then all you need to do is install and activate the Hide Title plugin for WordPress. After activation, go to the edit screen for the specific post and page. You can do this by simply clicking on the Posts or Pages menu in your WordPress admin and clicking on the item that you want to edit. On the edit screen, you will see a Hide Title meta box like this:

Hinding post or page title for single view pages

All you need to do is check this box and click on update or publish post button. That’s it. Now this plugin will hide the title on singular page views. What that means is that it will still show the title on your homepage or other archive pages, but not on the single page views. Open the post in the single post view to test the result to make sure that everything looks right.

This solution can be pretty handy if you are creating a simple landing page and you don’t want to show the title.

Hide Titles for All WordPress Posts and Pages

We can’t think of a reason why someone would do this, but lets look at how to hide the titles for all WordPress post and pages for the sake of learning. If for some reason, you want to hide title for all posts and pages on single pages, then you can achieve this by editing your theme. There are few ways of doing this.

The easiest solution would be add this code to your WordPress theme’s functions.php file.

function wpb_hidetitle_class($classes) {
if ( is_single() || is_page() ) : 
$classes[] = 'hidetitle';
return $classes;
endif; 
return $classes;
}
add_filter('post_class', 'wpb_hidetitle_class');

This filter simply adds an extra class .hidetitle to the post_class() function only when a single post or page is displayed. However, this filter will only work if your WordPress theme has support for the post class. If you want to do this for posts only and not pages, then just get rid of the part || is_page().

After adding this function, you need to add this css rule into you theme’s stylesheet.

.hidetitle .entry-title { 
display:none;
}

In the above CSS we have used display css property to hide the post and page title. However this CSS rule will only work if your WordPress theme uses entry-title in the post or page title. To find out which CSS class your theme uses for post titles, simply open your post in Google Chrome or Mozilla Firefox and take your mouse over to post title. Right click and select Inspect Element. Your browser will split up and you will see page source highlighting the source code for post title where you can see the CSS class used by your theme.

Finding CSS class used for an element

Lets assume that your theme uses article-title as CSS class for post titles. Simply change the CSS like this:

.hidetitle .article-title { 
display:none; 
}

The reason why we say that the above solution is the easiest one is because it will work for child themes of popular theme frameworks like Genesis and others. It will also work just fine for standalone WordPress themes.

Now both of the solutions that we have mentioned above will hide the title, but they are still loading the titles. So in other words, they are hiding it but not removing it. If you are a theme designer or someone who wants to remove the post or page title from your template, then you need to remove the_title code from appropriate theme files.

If you only want to do this for single post views, then you will likely find this code located in your single.php file. However, if you want to do this for through out the site, then you will need to edit files like index.php, archive.php, single.php, and any other file that contains a loop basically. It will require trial and error if you are new to this.

If you are working with one of the theme frameworks, then you would want to stick with the plugin solution or the post_class solution that we showed you.

We hope that this article helped you hide the title for specific WordPress posts and pages. What possible use cases can you see where you would want to hide post or page titles in single views? Let us know by leaving a comment below.


Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi. Page maintained by Syed Balkhi.

WPBeginner's Video Icon
Our HD-Quality tutorial videos for WordPress Beginners will teach you how to use WordPress to create and manage your own website in about an hour. Get started now »

Comments

  1. Les says:

    Hi

    I use the traffica theme for wordpress. I’m not sure how this eXtra header and image started occuring. Can some one tell me how to disable it? thanks
    Also please seem image below.

  2. Sulabh Sharma says:

    Thank you so much for posting this article. This helped me a lot. This way I could just avoid using plugins.

  3. Marco Calcanti says:

    You can’t think about the reason why do that: ;) because I want show the title as a big section centered

  4. Khalil says:

    Hi there,

    Are there any solutions for wordpress.com users please?

    Thanks

  5. Marinescu Ana says:

    Hi.I’m running Genesis,I want to hide the page title only on pages not posts.Can I do that.
    Thank you.

  6. Inge says:

    Great, thanks ever so much! And thanks also for the step-by.step information, it´s really helpful.
    My aim was to hide the title of pages only. If someone has clicked a menu
    button, they know where they´heading and I found that the titles were
    disturbing the picture
    For future reference for others: I did this by adding both these codes given above and then dropping is_single() || in line 2 of the funtions.php bit.

  7. Patrise Henkel says:

    YAY!!! thanks for this easy fix!

  8. dipesh says:

    i have a problem on my blog that every post is indexed in google with the blog name appended to it which is strictly non seo friendly ex: postname – blogname . I tried to fix this issue to no avail.
    my permalinks are already set to %postname% .Can you help you fix this.

  9. mayasl says:

    None of the solution is working for me!

  10. makrica says:

    Hi great post!

    I have one question. I have a blog running on a wp themify postline theme, and i have an option to hide page title and it works fine. But I don’t know does google index titles if i hide them? If not than hiding is useless.
    Thanks in advance
    m

  11. john wright says:

    I got the flash of hidden content ,mentioned by Crimson above.

    I tried using the plug-in Toggle the Title instead. Although it says its compatible up to wp 3.6.1, it works on my client’s wp 3.7.1 and without the flash of the title appearing then disappearing.

    It says it works on pages only, I’ve not tried it on a post.

  12. Muhammad Abdullah says:

    Absolutely lovely!! Good Work
    But here is a question about. Is there any drawback to hide the post and pages titles. mean to say regarding SEO or in Google point of View. Can somebody help me in this regard.
    Thanks,
    Muhammad Abdullah

  13. Chez says:

    thanks alot for this post

  14. Crismon says:

    I’ve tried the plugin but for some reason there was a delay in hiding the title text. When I reload the page for a second it shows the tile and then gone.

    Is there a fix for this?

  15. Chad Redling says:

    Perfect Guys, Thanks!

  16. Andy Wagstaff says:

    Hmmm..The plug-in isn’t working on my theme (Shiword)
    I have a site with 6 pages and one page where the posts go.I am DESPERATELY trying to remove the title just from the pages and failing

    I have tried about nine different plugs,one removed from both pages and posts (Which is NOT what I wished),but this one doesn’t seem to work at all.

    I’ve tried looking at the page.php file but cannot find what I need there either.

    Any ideas would be wonderful.It’s at http://www.mr-woggle.co.uk

    Thanks for a great site too

    Andy

    • Editorial Staff says:

      If that doesn’t work, then it might be easier to either edit the sidebar.php file or set w_title class to display: none.

  17. Mladen says:

    I am using this to hide page or post title:

    .page-title {display:none;}

    And it works al the time :)

    • Mladen says:


      .page-title {display:none;}

      • Rozina says:

        Are there any negative implications of hiding post title with CSS. The code is still visible to search engines but not to visitors.

        Would love to read views from wonderful community on this blog about the following

        1. Google penalty/SEO implications of hiding post title

        2. For cosmetic reasons is it better to remove the post title from the code itself and then use H1 tag to write a post title (in case someone wants to re-write post title in specific styling). In this case you are not hiding anything from search engines.

        • Editorial Staff says:

          Expert opinions will vary on this. To be very frank, Google isn’t specifically looking for minor things like that. If they penalize your site, then it is probably because of a different much bigger problem.

      • James says:

        When I paste —–> .page-title {display:none;} on the page under text option same thing appear on the site along with Title !!!. Where should i paste the code .page-title {display:none;} ??

    • James says:

      using where ????

Add a Comment

We're glad you have chosen to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and all links are nofollow. Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.