On June 17, 2010, WordPress Version 3.0, named for Thelonious, was released to the public. For more information on this enhancement and bug-fix release, read the WordPress Blog and see the Changelog for 3.0.
For Version 3.0, the database version (db_version in wp_options) changed to 15260, and the Trac revision was 15274.
Highlights
- WordPress and WordPress MU have merged – allowing the management of multiple sites (called Multisite) from one WordPress installation.
- New default theme “Twenty Ten” – takes full advantage of the current features of WordPress.
- New Custom Menu Management feature – allows creation of custom menus combining posts, pages, categories, tags, and links for use in theme menus or widgets.
- Custom Header and Custom Background APIs.
- Contextual help – help text accessed under the Help tab of every screen in the WordPress administration.
- Ability to set the admin username and password during installation.
- Bulk updating of themes – with an automatic maintenance mode during the process.
- Support for Shortlinks.
- Improved Custom Post Types and Custom Taxonomies – including hierarchical (category-style) support. (Try the Custom Post Type UI or GD Custom Posts And Taxonomies Tools plugins to see the possibilities.)
- A lighter admin color scheme – to increase accessibility and put the focus more squarely on your content.
User Features
General
- Check required php and mysql versions in the update and notify if the server environment does not meet those requirements
- New wp_login_form() provides a simple login form for use anywhere
- New WordPress logo for admin header
- Place “Search Engines Blocked” mini-alert in the wp-admin header to prevent people from accidentally delisting themselves
- Remove ‘Turbo’ link from admin header and remove Turbo section from the Tools->Tools panel
- Renamed various menu items, for example Posts->Edit becomes Posts->Posts, and Links->Edit becomes Links->Links, and so on
- Revised administration menu icons
- Revised Gray Admin Color Scheme
- Revised information in
readme.htmlfile - Show login form upon email-sent for recover/reset passwords
Dashboard
- Add link so user can visit Dashboard after core upgrade
- Move Tools->Upgrade menu option to Dashboard->Updates and overhaul of user interface so themes, plugins, and core upgrades under one panel
- New menu management (navigation) via Menus option under Appearances Menu (#11817)
- Password nag for newly registered users
- Split Right Now widget into Content | Discussion
Posts
- Allow for removing all tags in quick edit
- Allow themes to style the visual editor with editor-style.css file, using add_editor_style() function
- Enable custom taxonomy UI for pages as well as for posts
- Improved revision comparison user interface
- Shortlinks enabled, but still requires a plugin or theme support to fully realize this feature
- Added capital_P_dangit() filter to change ‘WordPress’ to ‘WordPress’.
Media
- Add FunnyOrDie.com oEmbed support
- Allow Deletion of Media Alt text
- Change Media UI labels from “Post Thumbnails” to “Featured Image”
- Cleanup of the edit media screen
- Don’t let “Crunching” overlap image name while uploading
- Optimize scan for lost attachments
- Support for additional file type extensions (Changesets 12581 and 13349)
Links
- Order link categories by name, not count, on Add New/Edit Link page
Comments
- Add additional columns to the Posts Comments view
- Allow configuration of number of comments to display Recent Comments dashboard module
- Block comments for future posts and password protected posts (when password not provided)
- Change to comments UI to show when a comment is replying to another, and link to the parent comment
Appearance
- Add meta_value_num and meta_key ordering for WP_Query to allow natural numeric ordering of results
- Add filter to get_avatar() to allow avatars for custom comment types
- Allow Tab indenting, Shift-Tab (outdenting), and multi-line tabbing, in theme editor
- Allow the Tag Cloud Widget to support non-tag taxonomies
- Allow theme background customization via new Background panel under Appearance menu
- New template file, front-page.php, for the front page of a site
- New template file, single-{post_type}.php, for Custom Post Types
- New template files, author-{nicename}.php, and author-{id}.php, for author specific templates
- New template files, taxonomy.php, taxonomy-{taxonomy}.php and taxonomy-{taxonomy}-{term}.php for Custom Taxonomies
- Style tweaks to theme editor
- Tab interface for Manage Themes and Install Themes in Appearance->Themes panel
- Improved child theme support; child theme use is highly encouraged and as described in the Child Themes article, very simple to accomplish
- New comment_form() that outputs a complete commenting form for use within a theme template
- The Default (Kubrick), and Classic themes, are no longer included in the WordPress distribution, but are available in the Theme repository
Plugins
- Add Details and Install Now action links under each plugin listed in Install Plugins
- Allow Tab indenting, Shift-Tab (outdenting), and multi-line tabbing, in plugin editor
- Upgrade plugins in bulk from the Plugins->Installed panel (#11542)
- When deleting plugins, check for uninstall hooks, and warn of data deletion
Tools
- Add tag-to-category and category-to-tag converters to the Tools panel, add tag-to-category converter links to Posts->Post Tagspanel
- Clean up OPML link export script
- Expanded filter criteria in Tools->Export panel
- Import WordPress fixes notices, attachments, and users
- Removed Turbo menu item, but because Turbo files weren’t removed, Turbo may still work
- All importers moved to the plugin repository (e.g. WordPress Importer)
Users
- Allow “No role for this blog” to be chosen in Users->Add New panel
- Added update_core, list_users, remove_users, add_users, promote_users, edit_theme_options, delete_themesand export Capabilities
Settings
- Removed Settings->Miscellaneous admin menu, moved uploads settings to Settings->Media panel
- Revise Settings->General panel, change “Blog” reference to “Site”
- Revise Gray Admin Color Scheme
Install Process
- Choose username and password during installation rather than using ‘admin’
- Show “Log In” button on install.php when “Already Installed”
- Automatic generation of Security Keys during installation
- Validate table_prefix in wp-config.php generator
- Standardize information in
wp-config-sample.php
Multisite
- New Tools->Network panel to ‘install’ mulitsite/network ability, and is available only if WP_ALLOW_MULTISITE is defined in wp-config.php
- New Super Admin menu with Admin, Sites, Users, Themes, Options, Update, sub-menus (available only if is_multisite() && is_super_admin() )
- New Dashboard->My Sites panel
- New Tools->Delete Site panel
- Configure a Network (multisite/WPMU) using wp-config.php file
- Terminology changes regarding Sites, Blogs, Networks (see Andrew Nacin’s explanation)
Development, Themes, Plugins
- A better default excerpt; remove multiple white spaces from the excerpt as well as splitting safely on UTF8 strings
- Add Child theme support for theme header registrations, second call to register_theme_headers() should add more headers, and not replace existing headers.
- Add add_plugins_page() function to allow adding a submenu to under Plugins menu
- Add get_search_link() with Permastruct (/search/) support, update get_search_link(), get_search_feed_link() and get_search_comments_feed_link()
- Add is_comment_feed()
- Add redirect_to and associated filters to registration and password recovery
- Add a wp_loaded action that fires once WordPress init has finished
- Add an INDEX on comment_parent (wp_comments table) to speed up wp_delete_comment() and reparenting queries
- Add argument hide_if_empty to wp_dropdown_categories() to hide dropdown if no terms to display
- Add argument id to wp_dropdown_users() and wp_dropdown_categories()
- Add argument post_type to get_page_by_title()
- Add argument taxonomies to register_post_type()
- Add argument taxonomy to wp_list_categories() and wp_dropdown_categories() to be custom taxonomy aware
- Add capability ‘edit_theme_options’ (see developer discussion on this)
- Add capability ‘list_users’ to provide more controls over listing users vs. editing users
- Add compatibility code for old themes that relied on templates from the default theme without expressly identifying it as the parent theme (Note: the fallback to these template files is now deprecated and will be removed in a future version)
- Add custom hierarchical post type support to get_pages()
- Add defaults for ‘post_content’ and ‘post_title’ in wp_insert_post()