The code history
of WordPress
WordCamp Paris - 2014
Who I am?
• Marko Heijnen - @markoheijnen	

• Working at 1&1 as their WordPress
specialist	


• WordPress core contributor	

• GlotPress core developer - @GlotPress	

• Co author of WP_Image_Editor
Our timeline
• 2003 - WordPress was founded	

• 2005 - WordPress 2.0 got released	

• 2006 - I started to use WordPress	

• 2010 - My first contribution to WordPress	

• 2012 - Recent rockstar of 3.4	

• 2013 - WordPress becomes 10	

• 2013 - 3.8 was the 21 major release
January 17, 2014 at 08:07
The first couple of
years I missed
I would say the
golden years
It was founded by

Matt Mullenweg

Mike Little
It all started almost 11
years ago when Matt
wrote a blog post
The comment
And WordPress
was born
But what were the most
important changes that
happened in the code?
Post Meta
When was this added to WordPress?
0.70
• WordPress had its first release as a fork of
b2 on May 27, 2003	


• A lot of code cleanups to make it more
stable and faster	


• Functions like texturize and manual excerpt
were added
1.0 “Miles Davis”
• Search engine friendly
permalinks	


• Multiple categories

January 3, 2004
1.2 “Charles Mingus”
• Post meta
• New plugin architecture
• Encryption of password	

• Localization
• Sub categories	

• Thumbnail creation

May 22, 2004
The WordPress Plugin Repository

• On January 10, 2005 the WordPress Plugin
repository was announced	


• It was then on WP-Plugins.org	

• It was focused on Trac since it didn’t have a
user friendly front-end, yet
1.5 “Billy Strayhorn”
• The basic template engine
was added

• Pages was added

February 17, 2005
2.0 “Duke Ellington”
• AJAX functionality got added	

• Capability API	

• Inline uploading	

• User level options	

• Pluggable object cache	

• Functions.php was added
• Nonces 2.0.3

December 31, 2005
2.1 “Ella Fitzgerald”
• Autosave	

• All queries got checked	

• More AJAX	

• Cron API
• WP_Error class was added

January 22, 2007
2.2 “Stan Getz”
• Widgets API
• Started using jQuery	

• PHPMailer got added	

• Increased the inline
documentation

May 16, 2007
The first unit tests got
September 20, 2007
2.3 “Dexter Gordon”
• Updating system
• Taxonomy API got added
• Canonical URLs	

• $wpdb->prepare()	

• Activation protection
• Restructure of wp-admin
folder

September 24, 2007
2.5 “Michael Brecker”
• Shortcode API
• Multi-file upload with

March 29, 2008

progress bar	


• EXIF extraction	

• Search posts and pages	

• Installing/updating plugins
22 contributors
2.6 “McCoy Tyner”
• Post Revisions	

• Full SSL support	

• Theme previews

July 15, 2008

75 contributors
2.7 “John Coltrane”
• HTTP API
• Uninstall a plugin	

• Settings API
• wp_page_menu()	

• Plugin installer	

• WordPress upgrader

December 10, 2008

144 contributors
2.8 “Chet Baker”
• New Widgets API	

• HTTP API updates and fixes	

• Search/Install themes

June 11, 2009
2.9 “Carmen McRae”
• Built-in image editor	

• Post thumbnails	

• Basic post type support	

• Meta data for comments	

• oEmbed

December 18, 2009

140> contributors
3.0 “Thelonious Monk”
• WordPress MU merged	

• Custom menus	

• Custom post type support
• Lots of other improvements

June 17, 2010

218 contributors
3.1 “Django Reinhardt”
• Admin bar	

• WP_User_Query	

• Advanced queries	

• List-type Admin Screens

February 23, 2011

180> contributors
3.2 “George Gershwin”
• Moved to PHP 5 and MySQL 5	

• Speed improvements	

• WP_Meta_Query

July 4, 2011

133 contributors
3.3 “Sonny Stitt”
• New editor API	

• Post-slug-only permalinks	

• is_main_query()	

• WP_Screen	

• Metadata API improvements

December 12, 2011

179 contributors
3.4 “Grant Green”
• Theme customizer	

• wp.* XML-RPC methods	

• WP_Theme

June 13, 2012

183 contributors
More awareness for
out unit tests
3.5 “Elvin Jones”
• WP_Image_Editor	

• switch_to_blog()	

• Underscore/Backbone	

• WP_Comment_Query and

December 11, 2012

WP_User_Query excepting
meta queries
260 contributors
3.5 “Elvin Jones”
• WP_Post	

• Ordering by post__in	

• AJAX support functions like

December 11, 2012

wp_send_json_success()

260 contributors
3.6 “Oscar Peterson”
• Audio/Video support	

• Better control for revisions	

• has_shortcode()	

• Heartbeat API

August 1, 2013

225 contributors
3.7 “Count Basie”
• Automattic updates	

• Stronger passwords	

• Language packs	

• Cleanup tickets	

• Better documentation	

• Improved Search	

• Date queries

October 24, 2013

211 contributors
3.8 “Charlie Parker”
• Heartbeat performance and

December 12, 2013

API improvements	


• Nginx detection	

• automatic_updates_complete

188 Contributors
A great progress
was made
Backwards compatibility
The market
PHP versions
Our tools
• Official GIT mirrors	

• Grunt	

• JSHint	

• Unit testing PHP and JS	

• Minification	

• Sass
The future
• 2014 looks like a great year for new API
features like:	


• WP API	

• Media improvements	

• Post Meta library	

• More see: http://make.wordpress.org/
core/features-as-plugins/
WPCentral.io
• @WPCentralio	

• Work in progress	

• If you like to see this information back in a
interactive way	


• Currently building the features like:	

• Download & Version history	

• Timeline of features
Questions?
@markoheijnen - http://markoheijnen.com

The code history of WordPress

  • 1.
    The code history ofWordPress WordCamp Paris - 2014
  • 2.
    Who I am? •Marko Heijnen - @markoheijnen • Working at 1&1 as their WordPress specialist • WordPress core contributor • GlotPress core developer - @GlotPress • Co author of WP_Image_Editor
  • 3.
    Our timeline • 2003- WordPress was founded • 2005 - WordPress 2.0 got released • 2006 - I started to use WordPress • 2010 - My first contribution to WordPress • 2012 - Recent rockstar of 3.4 • 2013 - WordPress becomes 10 • 2013 - 3.8 was the 21 major release
  • 4.
  • 5.
    The first coupleof years I missed
  • 6.
    I would saythe golden years
  • 7.
    It was foundedby Matt Mullenweg Mike Little
  • 8.
    It all startedalmost 11 years ago when Matt wrote a blog post
  • 10.
  • 11.
  • 12.
    But what werethe most important changes that happened in the code?
  • 13.
    Post Meta When wasthis added to WordPress?
  • 14.
    0.70 • WordPress hadits first release as a fork of b2 on May 27, 2003 • A lot of code cleanups to make it more stable and faster • Functions like texturize and manual excerpt were added
  • 15.
    1.0 “Miles Davis” •Search engine friendly permalinks • Multiple categories January 3, 2004
  • 16.
    1.2 “Charles Mingus” •Post meta • New plugin architecture • Encryption of password • Localization • Sub categories • Thumbnail creation May 22, 2004
  • 17.
    The WordPress PluginRepository • On January 10, 2005 the WordPress Plugin repository was announced • It was then on WP-Plugins.org • It was focused on Trac since it didn’t have a user friendly front-end, yet
  • 18.
    1.5 “Billy Strayhorn” •The basic template engine was added • Pages was added February 17, 2005
  • 19.
    2.0 “Duke Ellington” •AJAX functionality got added • Capability API • Inline uploading • User level options • Pluggable object cache • Functions.php was added • Nonces 2.0.3 December 31, 2005
  • 20.
    2.1 “Ella Fitzgerald” •Autosave • All queries got checked • More AJAX • Cron API • WP_Error class was added January 22, 2007
  • 21.
    2.2 “Stan Getz” •Widgets API • Started using jQuery • PHPMailer got added • Increased the inline documentation May 16, 2007
  • 22.
    The first unittests got September 20, 2007
  • 23.
    2.3 “Dexter Gordon” •Updating system • Taxonomy API got added • Canonical URLs • $wpdb->prepare() • Activation protection • Restructure of wp-admin folder September 24, 2007
  • 24.
    2.5 “Michael Brecker” •Shortcode API • Multi-file upload with March 29, 2008 progress bar • EXIF extraction • Search posts and pages • Installing/updating plugins 22 contributors
  • 25.
    2.6 “McCoy Tyner” •Post Revisions • Full SSL support • Theme previews July 15, 2008 75 contributors
  • 26.
    2.7 “John Coltrane” •HTTP API • Uninstall a plugin • Settings API • wp_page_menu() • Plugin installer • WordPress upgrader December 10, 2008 144 contributors
  • 27.
    2.8 “Chet Baker” •New Widgets API • HTTP API updates and fixes • Search/Install themes June 11, 2009
  • 28.
    2.9 “Carmen McRae” •Built-in image editor • Post thumbnails • Basic post type support • Meta data for comments • oEmbed December 18, 2009 140> contributors
  • 29.
    3.0 “Thelonious Monk” •WordPress MU merged • Custom menus • Custom post type support • Lots of other improvements June 17, 2010 218 contributors
  • 31.
    3.1 “Django Reinhardt” •Admin bar • WP_User_Query • Advanced queries • List-type Admin Screens February 23, 2011 180> contributors
  • 32.
    3.2 “George Gershwin” •Moved to PHP 5 and MySQL 5 • Speed improvements • WP_Meta_Query July 4, 2011 133 contributors
  • 33.
    3.3 “Sonny Stitt” •New editor API • Post-slug-only permalinks • is_main_query() • WP_Screen • Metadata API improvements December 12, 2011 179 contributors
  • 34.
    3.4 “Grant Green” •Theme customizer • wp.* XML-RPC methods • WP_Theme June 13, 2012 183 contributors
  • 35.
  • 36.
    3.5 “Elvin Jones” •WP_Image_Editor • switch_to_blog() • Underscore/Backbone • WP_Comment_Query and December 11, 2012 WP_User_Query excepting meta queries 260 contributors
  • 37.
    3.5 “Elvin Jones” •WP_Post • Ordering by post__in • AJAX support functions like December 11, 2012 wp_send_json_success() 260 contributors
  • 38.
    3.6 “Oscar Peterson” •Audio/Video support • Better control for revisions • has_shortcode() • Heartbeat API August 1, 2013 225 contributors
  • 39.
    3.7 “Count Basie” •Automattic updates • Stronger passwords • Language packs • Cleanup tickets • Better documentation • Improved Search • Date queries October 24, 2013 211 contributors
  • 40.
    3.8 “Charlie Parker” •Heartbeat performance and December 12, 2013 API improvements • Nginx detection • automatic_updates_complete 188 Contributors
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
    Our tools • OfficialGIT mirrors • Grunt • JSHint • Unit testing PHP and JS • Minification • Sass
  • 46.
    The future • 2014looks like a great year for new API features like: • WP API • Media improvements • Post Meta library • More see: http://make.wordpress.org/ core/features-as-plugins/
  • 47.
    WPCentral.io • @WPCentralio • Workin progress • If you like to see this information back in a interactive way • Currently building the features like: • Download & Version history • Timeline of features
  • 48.