WordPress 3.0 incorporates quite a few new features, including custom post types, a URL shortener, and a new theme. Though there isn’t as many new features as previous WordPress releases, it is helpful to have a list to aid in exploration of WordPress 3.0. You’ll find plenty of lists like this across the web, not least of which being the official changelog at the WordPress codex. The problem is that most of these lists don’t explain how to use the new features, and many are not self-explanatory or enabled by default. This is my attempt to remedy that. Here’s a list of the top seven most compelling features that could change the way you blog.
1. Built-in WordPress Multiuser (MU)
WordPress 3.0 adapts the ability to manage multiple different blogs from a single installation. Previously, you would have to install the WordPress MU (Multiuser) edition in order to do that. This is what blog services like WordPress.com use to provide and sell their hosting services. Now, instead of only having one blog, you can very easily create a network of thousands of blogs, and manage them all from the same interface.
A quick caution to people who are currently running a WordPress MU install: you want to be careful before you upgrade to 3.0. Use a test site to make sure all of the WPMU plugins work before you put them in production. There’s nothing like a ton of angry clients first thing on a Monday morning from users who can’t access their blog.
The multiuser functionality is disabled by default when you install or update to WordPress 3.0. To enable it, you need to paste this line in
wp-config.php, right above where it says/* That's all, stop editing! Happy blogging. */:define('WP_ALLOW_MULTISITE', true);You should refer to the WordPress documentation for more information.
This will allow the Network option to show up in the Tools menu, which you’ll access by going to Tools → Network. When you access that page, you’ll be greeted by an installer that will ask you to choose whether you want to install sub-blogs in subdirectories or subdomains.
From there, you’ll have to paste in a new
wp-admin.phpand.htaccessfile. WordPress 3.0 will walk you through the steps as soon as the installation of Network mode is completed.2. Custom Post Types
WordPress custom post types are a feature that could turbocharge WordPress as a content management system — and not in the way of the now defunct Turbo mode. While this may not seem much different than a post category at first glance, this gives developers and theme designers the ability to cause certain types of posts to have a different appearance and functionality than the rest of the blog.
For instance, I’m currently working on a WordPress theme gallery called Themebook. This is a portfolio theme that allows me to upload an image and use that as a centerpiece of the content, much like a photoblog. But, I can’t figure out how to incorporate a normal blog post — that is, an article with a headline, body, and footer — without having to create a special category or tag that I could sort through on the backend. With post types in WordPress 3.0, I could define the types “theme” and “blog-post,” and have the theme use a different approach for each type.
For instance, I could create the ‘theme’ post type by sticking the following in my
functions.phpfile:add_action( 'init', 'create_post_type' );function create_post_type() { register_post_type( 'theme', array( 'labels' => array( 'name' => __( 'Themes' ), 'singular_name' => __( 'Theme' ) ), 'public' => true, ) );}You’ll want to put in your post type, in both singular and plural form, where I put in ‘theme.’
Then, the “Themes” option will appear on the admin page on the top level of the left menu, right by where pages and posts normally live. After I create a few theme posts, I can sort for them with the following:
$loop = new WP_Query( array( 'post_type' => 'super', 'posts_per_page' => 10 ) );while ( $loop->have_posts() ) : $loop->the_post(); . . .endwhile;Now that you’ve seen Themebook, I would love some advice about the viability of turning it into a theme store, iTunes-style (minus the closed system). Tell me what you think in the comments.
3. Navigation Menu Customization
This nifty little feature lets you build your own custom menu, complete with categories, tags, posts, pages, and anything else from the taxonomy. It uses a nifty drag and drop interface that allows users to sort, organize, and remove elements from the menu on the fly.
I tried to play around with this with the new Cherrysave theme (which will hopefully be available for download soon), but I couldn’t get the link to show up in the admin interface. It turns out that because the menu’s public output is meant to be rendered as a widget, you need to have a widgets-aware theme. So, for those of you using custom themes without widget support, don’t get your hopes up (but those of you with stock or good custom themes, let me know what you think of this feature).
4. Custom CMS Taxonomies
Basically, taxonomies are pieces of meta information that attach to things you create in WordPress 3.0. They are used to organize and sort your content in ways to relate directly to the content. For instance, older versions of WordPress only have tags and categories as the available taxonomies for posts. WordPress 3.0 allows users to go far beyond that.
Brian Casel at Mashable explains it far better than I do:
Let’s say you’re a film fanatic and you use your WordPress blog to post reviews and rate new movies. You can create a custom taxonomy for “Rating,” then add R, PG-13, PG, G to every review.
Another example would be real estate listing websites. In addition to photos and descriptions, you might use additional taxonomies to provide a list of specs on each property such as asking price, number of bedrooms, year built, etc.
Much more clear, right? So how does one create said taxonomies? Just stick this code snippet into your
functions.phpfile, my dear:register_taxonomy('test', 'post', array('hierarchical' => false, 'label' => 'test','query_var' => true, 'rewrite' => true));Just replace “test” with the name of your taxonomy, and you’ll be off and running. Now, when you edit or add a new post, you’ll see boxes where you can fill in content about the taxonomies you just created.
And, as Cosmin Negoita over at 1st Web Designer points out, you can easily access this information in your theme with the following snippet, placed inside the WordPress loop:
echo get_the_term_list($post->ID, 'test', 'Test: ', ', ', '');Again, “test” gets replaced with the name of your taxonomy.
5. New Default Appearance: The Twentyten Theme
Twentyten is the much needed new default theme for WordPress 3.0. It’s actually quite beautiful, and features simple lines and great typography.
Twentyten also has advanced features built directly into the theme that take advantage of the power of WordPress 3.0. For instance, you can select a custom header and background from a variety of different stock images, or upload your own. The menus, created by the menu management tool, are drop-downs that live in the header. One of my favorite new features, though, is the ability to create “Asides” and “Galleries” from your posts.
To create these types of posts, just create categories called “Asides” and “Gallery,” and file your post as appropriate. The only thing I can’t figure out is why the WordPress development team didn’t choose to take advantage of the new custom post types feature to do this instead. Without reading a guide on Twentyten, most users would never have known that these features existed. With custom post types, Asides and Gallery would appear in the left column, and people could create them at will via a graphical interface. If you have any insight on this, please, leave me a comment.
6. WordPress URL Shortener with Shortlink (self-hosted blogs only)
Shortened URLs are a great way to share your content on Twitter and Facebook. Unfortunately, though, a link from bit.ly or owl.ly, while effective, masks your domain name and can make users wary. Furthermore, it doesn’t do much for your branding. Wtih WordPress 3.0, you can make your own shortlinks, assuming that your blog is self-hosted. All you need to do is click on the “Get Shortlink” button right below the title page in the post editor.
Then, you’ll get a pop-up with the WordPress shortlink URL. For example, the shortlink for this post is:
http://www.cherrysave.com/?p=4617. Author Templates
Now, you can customize how author information is displayed on your blog. This is really useful for those who have multiple people posting, or those who took advantage of the new Network feature in WordPress 3.0.
In order to create a new author template, merely create
author.phpin your current theme directory, and use the author template tags as appropriate. At least, that’s how you would have done it in previous versions of WordPress.In 3.0, you can go a step further and set up a custom template per author, based either on their nice name or their user id number. For instance, I could have a custom author template for myself by creating
author-kurt.phporauthor-1.phpin my theme directory, and filling it with author template tags. One feature I would like to see in future versions of WordPress is the ability to create author templates by the user’s class. For instance, there could be one template for admins, one for moderators, and one for authors. If anyone knows how to do this now, let me know.Is there any important features that I missed? Let me know in the comments, and I’ll update this post as things turn up!
Top 7 New Features in #WordPress 3.0 via @Cherrysave
via cherrysave.com






