Arm your vuvuzelas: WordPress 3.0, the thirteenth major release of WordPress and the culmination of half a year of work by 218 contributors, is now available for download (or upgrade within your dashboard). Major new features in this release include a sexy new default theme called Twenty Ten. Theme developers have new APIs that allow them to easily implement custom backgrounds, headers, shortlinks, menus (no more file editing), post types, and taxonomies. (Twenty Ten theme shows all of that off.) Developers and network admins will appreciate the long-awaited merge of MU and WordPress, creating the new multi-site functionality which makes it possible to run one blog or ten million from the same installation. As a user, you will love the new lighter interface, the contextual help on every screen, the 1,217 bug fixes and feature enhancements, bulk updates so you can upgrade 15 plugins at once with a single click, and blah blah blah just watch the video. (In HD, if you can, so you can catch the Easter eggs.)
URL : http://wordpress.org/development/2010/06/thelonious/
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 background APIs.
Contextual 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.html file
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 Tags panel
Clean up OPML link export script
Expanded filter criteria in Administration > 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
Settings
Install Process
Multisite
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() andget_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()
Add email and login duplicate checking to wp_insert_user()
Add extra hooks to “Right Now” dashboard widget
Add filter to the links in paginate_links() and to the arguments in wp_link_pages()
Add filter post_updated_messages to allow changes to the $messages array in wp-admin/edit-form-advanced.php
Add filter post_updated action fires when a post is updated; post ID, current and previous post objects are passed and wp_check_for_changed_slugs() updated to use new hook
Add flag to taxonomy registration allowing permalinks to be prepended with front, or not
Add initial WP_DEBUG define to wp-config-sample.php and suggest plugin/theme developers use it
Add mobile webkit styles for twentyten theme
Add more orderby and select options to get_comments
Add Multisite capabilities (#11644 )
Add new protocols for kses and make the list of protocols filterable
Add optional comment ID argument to comment template functions
Add replace method to $wpdb (#10864 )
Add support to get_terms() to allow ‘include’ & ‘exclude’ args to be arrays()
Add support to is_singular() to allow testing of specific post_types such as is_singular('book') or is_singular( array( 'newspaper', 'book' ) )
Add the generator element in feeds through the {rss2|atom|rdf|rss|opml}_head hooks
Add ‘themes_loaded’ hook to run after parent/child themes have been included
Add ?ver=DATE query strings to all images that changed since 2.9, to expire browser cache and bump versions on all CSS/JS files modified in that process
Admin support for custom post types (#9674 )
Admin support for hierarchical taxonomies (#10122 )
Allow custom post types to have custom icons
Allow enabling/disabling title and editor per post type, introduce remove_post_type_support(), add enable/disable for author override
Allow include/exclude arguments for get_posts() and get_pages() to be an array
Allow methods to be used as a callback in wp_unique_filename()
Allow more special characters in wp_generate_password()
Allow multiple To: recipients in wp_mail() and improve handling of \r\n in headers and multiple CC/BCC headers
Allow people to attach PHP 5.3 Closures to filters and actions
Allow plugins to modify the query run by WP_User_Search
Allow themes to specify a menu fallback other than wp_page_menu()
Better inline documentation for WP_DEBUG , WP_DEBUG_DISPLAY , and WP_DEBUG_LOG .
Better POST_BY_EMAIL logic
Check PHP and MySQL versions in upgrade.php
Convert Terms page to use WP_Ajax_Response(), hierarchical terms will now appear under their parent OR have the parents prefixed (Changeset 13086 )
Create metaboxes for hierarchical taxonomies
Create post_status=auto-draft when creating a new post item and status changes to draft on first auto-save
Customizable death (wp_die() is now pluggable) (#11892 )
Deprecate get_alloptions()
Deprecate get_profile() for get_the_author_meta()
Deprecate trackback_rdf() (#11139 )
Deprecate add_option_update_handler() and remove_option_update_handler() in favor of register_setting() andunregister_setting()
Deprecate automatic_feed_links() in favor of add_theme_support (‘automatic-feed-links’)
Deprecate get_bloginfo(‘text_direction’) in favor of is_rtl()
Deprecate set_current_user() in favor of wp_set_current_user()
Deprecate MagpieRSS in favor of Simplepie (#11982 )
Deprecate Snoopy
Deprecate User Levels (use Roles and Capabilities instead) (#10805 )
Deprecate clean_url() in favor of esc_url() and esc_url_raw() (#12309 )
Deprecate VHOST in favor of a boolean, SUBDOMAIN_INSTALL (Note: core will keep VHOST defined for plugins’ sake, but you should only define SUBDOMAIN_INSTALL; will throw notice if VHOST is defined, and a warning if they somehow conflict; sunrise can still handle them
Deprecate is_term and is_taxonomy in favor of term_exists and taxonomy_exists
Don’t check for the existence of index.php in the htaccess rewrite rules
Don’t query against entire users table in wp_dropdown_users()
Don’t require a default category for post types other than ‘post’
Ensure that for multiple sidebar additions, the ID is unique
Extend the_modified_date() to support before/after/echo
Fallback to wp_page_menu() from wp_nav_menu() if no menus are setup
Fix Press This entity encoding
Fix DST/Standard transition display in Settings ->General
Fix recursive chmod for WP_Filesystem
Flag post statuses as public, private, protected, or internal
Functon get_usernumposts() is now deprecated in favor of count_user_posts() for naming consistency
Improve user listing performance
In Twenty Ten theme, don’t use post thumbnail as the custom header if it’s smaller than the header size
Introduce *_user_meta() functions, deprecate *_usermeta() family
Introduce _ex(), a hybrid between _e() and _x(), to translate with context, then echo.
Introduce add_editor_style() to easily register a stylesheet for the visual editor
Introduce add_permastruct() and flush_rewrite_rules(), wrappers for the corresponding WP_Rewrite methods
Introduce disabled() form helper, move selected() and checked() out of wp-admin and into full scope
Introduce delete_user_option()
Introduce get_available_languages()
Introduce get_comment_id_fields() to get comment_id_fields() and introduce a filter on the output to add extra fields
Introduce get_index_template() to allow child themes to override a parent theme’s index.php
Introduce get_intermediate_image_sizes() for getting all the intermediate image sizes to be used both when adding attachements and deleting
Introduce get_post_types() function to get a list of registered post types
Introduce get_super_admins() and allow hard-coding a global super_admins array and bypassing site options
Introduce get_taxonomies() function to get a list of all registered taxonomies (#12516 )
Introduce get_template_part() function to include generic files (other than header, sidebar, footer) (#13146 , #13816 )
Introduce get_term_feed_link() and use it in wp_list_categories()
Introduce get_the_author_link()
Introduce get_the_date()
Introduce home_url()
Introduce is_child_theme()
Introduce is_post_type_hierarchical() to use to check if a post type support hierarchical
Introduce is_rtl() and becomes defined when locale is loaded
Introduce is_super_admin()
Introduce is_textdomain_loaded()
Introduce menu_page_url() for plugins to use to get the URL for the pages they have added
Introduce remove_theme_support()
Introduce post_type_exists()
Introduce sanitize_key()
Introduce set_current_screen(). Set current screen for inline edit ajax requests so post rows can be properly displayed.
Introduce taxonomy_exists() to replace is_taxonomy()
Introduce term_exists() to replace is_term()
Introduce the_shortlink() template tag (#10640)
Introduce unload_textdomain() and add plugin_locale and theme_locale filters to load_*_textdomain() functions
Introduce unregister_theme_headers()
Introduce update_blog_details()
Introduce wp_check_filetype_and_ext() to handle mime/ext image comparisons and corrections for upload and sideload
Introduce wp_reset_postdata() to reset the post global for the current query_posts() call after using a loop with a new WP_Query object
Introduce constant DISALLOW_FILE_MODS for disabling all ops that modify core, theme, or plugins files
Introduce constant DISALLOW_FILE_EDIT flag for enabling/disabling the theme and plugin editors
Introduce constant DISALLOW_UNFILTERED_HTML to disallow unfiltered_html for all users, even admins and super admins
Introduce constant SUBDOMAIN_INSTALL boolean to replace VHOST
Introduce constant WP_DEFAULT_THEME to use to set ‘default’ theme when installing new sites
Introduce Custom Taxonomies translation strings
Introduce theme compatibility files so incomplete themes that need to inherit templates will inherit them from wp-includes/theme-compat
Introduce WP_User::for_blog() and current_user_can_for_blog() to avoid calls to WP_User::_init_caps()
Introduce wpdb::tables() to fetch table names on a global or blog scope
Introduce ZipArchive version of unzip_file() (more efficient on memory usage for supporting hosts)
Make get_bloginfo(‘wpurl’) use site_url(), not get_option(‘siteurl’)
Make better use of $wp_query->get_queried_object()
Make calendar valid HTML 5
Merge clear_global_post_cache() into clean_post_cache()
Merge Categories/Hierarchical taxonomies into edit-tags.php
Merge edit-page-form.php into edit-form-advanced.php
Merge edit-pages.php into edit.php
Merge page.php into post.php
Merge page-new.php into post-new.php
More powerful version of is_tax()
Move send_nosniff_header() into wp-includes so it can be used in wp-ajax.php
New $required_mysql_version global in wp-db.php
New comment_form() that outputs a complete commenting form for use within a template (#10910)
New posts_search filter in query.php
Numerous functions deprecated and changes to not use those deprecated functions
Optimize single_post_title(), single_tag_title() & single_cat_title() to use WP_Query globals if available
Pass default post to default_content, default_title, and default_excerpt filters, to allow filtering by post_type and other attributes
Prevent page(\d+) slugs, and force a suffix
Recommended reading from a theme developer’s view regarding navigation menus; see Ryan Boren’s recommendation
Redirect ?page_id=xx for the Posts page to the posts page
Refactor get_available_languages() to use glob() instead of *dir functions
Reminder that escaping rules for options and transients changed so see Ryan Boren’s explanation
Reminder to plugin authors to test and make sure they do not generate unexpected output; see Ryan Boren’s explanation
Remove STYLE_DEBUG constant, SCRIPT_DEBUG now handles both scripts and CSS
Remove wp-ajax.php. admin-ajax.php can be used (and is better for) for front-end/nopriv AJAX requests
Rename get_post_link() to get_post_permalink() to avoid conflict with bbPress
Rename the new ‘themes_loaded’ hook to ‘after_setup_theme’ to prevent confusion as to what it actually does & where its fired from
Revised Coding Standards: no camelcase variables, use lowercase for variables
Serve a real 404 for ?p=does-not-exist, ?cat=does-not-exist, etc
Show custom hierarchical taxonomies in the menus
Show theme installer only to super admins
Suffix and version bump for ie.css
The Settings API now supports automatic error display for validation problems with add_settings_error() (#11474)
Tidy up logic for defining WP_DEBUG
Update wp_popular_terms_checklist() to handle custom taxonomies
Update jQuery to 1.4.2 (#12305)
Update jQuery UI to 1.7.3
Update json lib
Update phpass to 0.2
Update Prototype.js to 1.6.1
Update Scriptaculous.js to 1.8.3
Update SWFobject JS to 2.2
Update wp_clear_scheduled_hook calls to use array when passing args
Use admin_url() for images in wp-admin, to allow for filtering
Use get_terms() in wp_count_terms()
Various phpDoc updates
Various changes to wp-includes/http.php
Features Deferred to Later Versions
These features didn’t make it into current release and have been designated for a future release.
Overhaul of user roles
Media uploader improvements
Incoming search terms: Related Posts
Leave a Reply
Comments