The WordPress community is very proud to present the next generation of WordPress to the world, our 2.0 “Duke” release, named in honor of jazz pianist and composer Duke Ellington. We’ve been working long and hard to bring you this release, and I hope you enjoy using it as much as we’e enjoyed working on it. In this release we’ve focused a tremendous amount on what we believe to be the core of blogging — the writing interface. Before you upgrade from an earlier version, remember that this is a major release and thousands of lines of code have changed. Before upgrading it’s always good, just in case, to make a backup of your database and WordPress files. It only takes a few minutes and gives you a total safety net if for whatever reason things don’t work. It is also probably a good idea to turn off your plugins, and activate them one-by-one after you’ve upgraded. Without further ado, you can download WordPress 2 right now. Read on for more information about what we think you’ll love about Duke.
- Completely Redesigned Backend — The first thing you’ll notice when you login to your blog is the backend has been completely overhauled for both aesthetics and usability. This is the first iteration of exciting things to come from the Shuttle team of designers that has been volunteering their time, and look for even more aesthetic improvements in the future.
- Faster Administration — Call it AJAX, call it DHTML, call it Larry, but we’ve paid close attention to streamlining some of the most common tasks in managing your blog. For example if you’re writing a post and you can add categories on the fly, much like tagging in Flickr. Also instead of having two separate UIs for “simple” and “advanced” posting, we’ve combined them and let you customize the layout of the page on the fly by dragging and dropping the dialogs around. It saves where you put things so when you return it’s just like you left it. When you delete a comment or category it will fade out without a page load.
- WYSIWYG Editing — WP dev Andy Skelton and the TinyMCE team have done a tremendous amount of work to bring a smooth WYSIWYG editing experience to WordPress. As code purists, we are very picky about what kind of HTML is generated, and while it’s not perfect yet (for instance nested lists can cause trouble) for 95% of what you do post-to-post the WYSIWYG should save you time. And if it doesn’t, you can turn it off on your profile page. One note: Safari and older versions of Opera, both fantastic browsers, don’t yet support everything that’s needed to do WYSIWYG, but we fully expect new versions of those browsers will continue to improve their standards support, so it may just be a matter of time.
- Included Spam and Backup Plugins — We’ve included two of the most popular WordPress plugins: Skippy’s DB backup can backup your database to a file and optionally email you a copy; Akismet is a distributed anti-spam system which gets smarter the more people use it.
- Resizable Editing — This is one of my personal favorite features. Ever been writing a post and that textarea seemed a little small? Happens to me all the time, and our new rich text editor includes a feature that lets you resize the editor on-the-fly by clicking on the corner, just like a regular window.
- Inline Uploading — We’ve optimized our uploader for image, audio, and video files and put it inline with the posting screen. You don’t have to bounce around any more when writing a post! It also will organize your files for you as you upload them to make them easier to find later. On the backend, each uploaded file is actually a “sub-post” so it can have individual comments and pingbacks, its own permalink, and even a custom template based on what type of file it is. You can click on attached files to get a menu of options, or if you’re on Firefox you can drag and drop them into your WYSIWYG editor.
- Faster Posting — In the past if you were linking to a number of posts or pinging a lot of update services, your posting time could appear to slow to a crawl even though everything was instantly done on the backend. We’ve modified how this works now so posting should be near-instantaneous, like everything else in WordPress.
- Post Preview — Another enhancement to the post screen, now when you save a post it shows a live preview of how the post would look on your site, with the stylesheet and theme and everything. No more publishing a post just to see if it works.
- Streamlined Importing — We’ve rewritten our import system from the ground up to be much easier to use (you no longer have to edit files), put it behind authentication, and also made it easy for new importers to be dropped into the system, much like plugins.
- User Roles — We had a ton of feedback on our old numerical user level system. No one was exactly sure what those numbers meant! We’ve distilled the basic functions into a set of roles — such as administrator, editor, contributor — that make it easier to understand what sort of capabilities you’re giving your blog’s users. The new system is completely pluggable too, so plugins can modify roles and create groups that have access to certain things.
- Header Customization — If you’re tired of the blue header in the default theme, you can now change the colors and text of it, which we’ve included as a demo of some of the new features available to theme authors.
On the backend we’ve done a ton of changes to clean up code, make things more consistent, and enable a lot of new types of applications to be built on top of WordPress.
- User Level Options — You can now store options on a per-user level rather than having them apply for the entire blog. An example of this in WP2 is with the rich text editor, which can be turned on or off per a user’s discretion.
- Improved Abstraction — We’ve eliminated almost all direct SQL queries from the code and moved them to functions and classes that make the entire program more consistent.
- Built-in Caching — WordPress now includes a completely pluggable object cache system that cuts the number of queries most pages do in half. By default it is disk-based, but there is already a plugin to use memcached and we expect more are on their way. We’ve only begun to tap into this.
- Plugin Hooks Galore — We’ve added hooks for plugin authors wherever we could think to, so what you’re able to do in the new system is pretty dramatic. Ne features like the WYSIWYG and the inline uploader are completely pluggable and can be replaced entirely.
- Import Framework — The new import framework allows you to create an importer with about a third of the code you used to need, and it can have a consistent interface with no extra work.
- Theme Functions — Themes can now include a functions.php file that will now be loaded like a plugin attached to the theme.
- Theme preview images — You can now include a screenshot of the theme with the download so in the WP interface your users will see a quick preview of what it looks like.
- Hundreds and Hundreds of Bug Fixes — 2.0 has hundreds of tracked bugs and enhancements, many that are very subtle.
You may have noticed our design has changed quite a bit. We’ve also moved WordPress.org to a newer, faster server. There were a few issues with the move which is why we’ve held off for a few days on announcing 2.0. Everything seems to be smooth sailing now.