10 Most Wanted Category Hacks and Plugins for WordPress
Categories provide an easy way to sort your WordPress content. However, there is so much more that you can do with categories to make your site more user and search engine friendly. In this article, we will show you some of the most wanted category hacks and plugins for WordPress.
1. Category RSS Feeds
Did you know that each category on your WordPress site has its own RSS feed? Just add feed at the end of your category URL like this:
/category/news/feed/
That’s all, you can add this link on category templates. Don’t worry we will show you how to create category templates later in this article.
Another great benefit of category feeds is that you can allow your users to subscribe to categories. This gives your users a chance to only subscribe topics that interest them.
2. Category list with RSS Feed Links
The default categories widget in WordPress does not allow you to display an RSS feed link next to category names. If you would like to display feed links next to category names, then add this code in your theme’s functions.php file or a site-specific WordPress plugin.
function wpb_categories_with_feed() { $args = array( 'orderby' => 'name', 'feed' => 'RSS', 'echo' => false, 'title_li' => '', ); $string .= '<ul>'; $string .= wp_list_categories($args); $string .= '</ul>'; return $string; } // add shortcode add_shortcode('categories-feed', 'wpb_categories_with_feed'); // Add filter to execute shortcodes in text widgets add_filter('widget_text', 'do_shortcode');
You need to add [categories-feed]
shortcode inside a text widget to list categories with feed links next to them.
3. Adding Category Icons in WordPress
Images make the web more interesting. You can use images to make your category pages stand-out. To associate images with your categories you need to install and activate the Taxonomy Images plugin. Upon activation you need to visit Settings » Taxonomy Images to enable images for categories.
To associate images with categories simply visit Post » Categories and click on the thumbnail icon to upload category images.
See our guide on how to add taxonomy images in WordPress for more details.
4. Enable Categories for Pages
By default categories are only available for posts in WordPress. However, you can associate them to any post type including pages. Simply install and activate Post Tags and Categories for Pages plugin. It works out of box and there are no settings for you to configure. Simply click on pages and you will see categories and tags under the pages menu. Take a look at our tutorial on how to add categories and tags for WordPress pages for more information.
5. Enable Sticky Posts for Category Archives
In WordPress you can make posts sticky to feature them on your home page. To add sticky posts for your category pages, simply install and activate Category Sticky Posts plugin. Upon activation, the plugin adds a category sticky metabox on the post edit screen. See our tutorial on how to add sticky posts for WordPress categories for detailed instructions.
6. Creating Category Templates in WordPress
WordPress comes with a powerful theme engine. By default it looks for templates with specific names in your theme to display certain pages. For example, the category.php
template in a theme is used to display all category pages.
Similarly, you can create templates for specific categories by naming the template with category name. For example, to create a template for movies category, you will name the template file category-movie.php
.
Use your theme’s category.php file as the starting point for your single category template and then make the changes you need. For more detailed instructions take a look at our tutorial on how to create category templates in WordPress.
7. Exclude Specific Categories from RSS Feed
By default all your posts appear in your site’s RSS feed. If you would like to hide certain categories from site’s main RSS feed, then simply install and activate the Ultimate Category Excluder plugin. Upon activation, simply visit Settings » Category Exclusion to select categories you want to hide from your RSS feeds.
8. Show Recent Posts from Specific Categories
The main use of categories is to help you sort your content and help your users find content easily. If a user finds a post in a specific category interesting, then they are likely to read similar posts in the same category. To display recent posts from a category use this code in your theme where you want recent posts from a category to appear.
$the_query = new WP_Query( 'category_name=news' ); if ( $the_query->have_posts() ) { echo '<ul>'; while ( $the_query->have_posts() ) { $the_query->the_post(); echo '<li>' . get_the_title() . '</li>'; } echo '</ul>'; } else { // no posts found } /* Restore original Post Data */ wp_reset_postdata();
Replace the value of category_name with the name of category you want to use.
9. Assign Author to Specific Categories
When managing a multi-author WordPress site you may want to assign authors to only post into specific categories assigned to them. Simply install and activate the Restrict Author Posting plugin. Upon activation, go to Users and edit the user you want to assign a category. On the user edit screen you will see a Restrict author post to a category section, where you can select the category assigned to that particular user.
10. Show Excerpts on Category Pages
We recommend our users to display excerpts on archive and category pages. Displaying excerpts only cuts down your page load time which is good for SEO. Apart from that it also protects you from duplicate content issue on your site. To replace full content with excerpts on category pages, simply add this code to your theme’s functions.php file or a site specific plugin.
function my_excerpts($content = false) { if(is_category()) : global $post; $content = $post->post_excerpt; // If the post has explicitly set excerpt use that if($content) : $content = apply_filters('the_excerpt', $content); // If no excerpt is set else : $content = $post->post_content; $excerpt_length = 55; $words = explode(' ', $content, $excerpt_length + 1); if(count($words) > $excerpt_length) : array_pop($words); array_push($words, '...'); $content = implode(' ', $words); endif; $content = '<p>' . $content . '</p>'; endif; endif; return $content; } add_filter('the_content', 'my_excerpts');
You can also replace content with excerpt by editing your theme’s category.php file and replacing the_content with the_excerpt. For more instructions see this tutorial on how to display post excerpts in WordPress themes.
We hope this article helped you learn some new category hacks and plugins for WordPress. For more best practice tips, see our guide on Categories vs. Tags (Best Practices).
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Google+.