Download as pps, pdf, or txt
Download as pps, pdf, or txt
You are on page 1of 18

WordPress 3.

0
WordPress DC Meetup, Feb. 24, 2010

Andrew Nacin
WordPress Core Committer

andrewnacin@gmail.com
andrewnacin.com
Scope for 3.0

What’s in 3.0 What’s not in 3.0


• “The Merge” • Media/Upload (3.1)
• Menus • Major UI changes
• Custom post types • TinyMCE
• Custom taxonomies • PHP 5
• New default theme
• Core plugins
Hosting multiple blogs
• Top-level categories
• Shared user tables
• wp-config.php swaps
– Blog ids, table prefixes
• Shared themes
• Deeper integration
• WPMU

• ‘multi-user’ is more than ‘multi-blog’


The Merge
• Multisite / Network feature
• Backwards/forwards compatibility
• Massive merging, followed by cleanup
• Terminology/concept nightmare
• Easy upgrade at Tools > Network
• Network Plugins
• Per-blog roles and capabilities
• is_multisite(), is_super_admin()
Menu Management UI
• Taking after dynamic sidebars and widgets
• Multiple menus
• Pages, categories, tags, links, arbitrary
• Woo Themes
• Dogfooding
WooThemes custom navigation – before inclusion in WordPress
Post types and taxonomies
• Post Type: A way to store objects
– Obvious: posts, pages, news releases
– Not as obvious: navigation menu items
• Taxonomy: A way to group objects
– Post Tags, Categories, Link Categories,
People, Places, Topics, Things, Animals
– Hierarchical (categories) or not (post tags)
– Taxonomies for movies: Actors, Directors,
Producers, Studios, Genres
Post types and taxonomies
• Will change the way developers work
• Dry up code and pages
• Allows easy registration
• Full admin panels and meta boxes
• New capabilities scheme
• Taxonomies can route different URLs
– www.example.com/people/andrew-nacin/

• DRY = don’t repeat yourself


Register a post type
register_post_type( 'news-release', array(
'label' => 'News Releases',
'singular_label' => 'Release',
'public' => true,
'show_ui' => true,
'supports' => array( 'post-thumbnails',
'excerpts', 'trackbacks', 'comments',
'custom-fields', 'revisions' ),
// Many more flags available
) );
Register a taxonomy
register_taxonomy( 'people',
array( 'post', 'news-release' ),
array(
'label' => 'People',
'public' => true,
'show_ui' => true,
// More flags available
)
);
A ‘News Release’ post type with a ‘People’ taxonomy
Twentyten
• Not your average theme
• Exposes as much as possible
• New get_loop()-like template tag
• Custom background, header, navigation
• Footer “sidebars”
• Post thumbnails
• Editor styles
• Child theme support
Twentyten theme
Custom Background and Custom Header panels (as of this morning)
Project development
• “Core Plugins”
– Post by Email
– Health Check
– PodPress
• More committers
• Mailing lists, workgroups, project blogs
• Better workflows
Other cool features
• Pick a username/password during install
• Comment and login form functions
• Author-specific templates
• Comment moderation improvements
• Search engine visibility indicator
• Indenting in file editors
• More login security by default
Want categories on pages?
function nacin_cats_for_pages() {
register_taxonomy_for_object_type( 'category', 'page' );
}

add_action( 'init', 'nacin_cats_for_pages' );

// Done.
Follow along Timeline
• wp-svn • Feature freeze is March 1
– mailing list for revisions – patch sprint
• wp-hackers • March 15
– plugin and core developers – Initial public beta
• wp-testers • April 15
– alpha/beta testers – release candidate
• IRC #wordpress-dev • May 1
• wpdevel.wordpress.com – 3.0 (and WordCamp SF)
– Development blog
• core.trac.wordpress.org
– Bug/feature tracker

You might also like