Not just for blogging anymore, WordPress is an effective platform for powering websites with a variety of types of content: product catalogs, store locations, employee directories, and more.
Using advanced WordPress features like custom post types, store this content as structured data to make it easier to maintain and better suited to live in new contexts like mobile applications. Learn about these structured data features, custom plugin and theme development, and mobile device optimization.
2. @randyhoyt #wcto
About Me
Randy Hoyt randyhoyt.com
@randyhoyt
Presentation randyhoyt.com/wcto
3. @randyhoyt #wcto
WordPress Timeline
May 2003
WordPress 0.7
− Initial Release
− Blog Posts
2003 2005 2007 2009 2011 2013
WordPress Now Available
http://wordpress.org/news/2003/05/wordpress-now-available/
4. @randyhoyt #wcto
WordPress Timeline
May 2004
WordPress 1.2
− Randy’s first WordPress blog
2003 2005 2007 2009 2011 2013
5. @randyhoyt #wcto
WordPress Timeline
February 2005
WordPress 1.5 “The „pages‟ feature allows you to run
− Pages
− Custom Fields
your entire site through WordPress.”
2003 2005 2007 2009 2011 2013
Announcing WordPress 1.5
http://wordpress.org/news/2005/02/strayhorn/
8. @randyhoyt #wcto
Structured Data
What is it?
“Data that resides in fixed fields
within a record.
“ Contrast with unstructured data.”
PC Magazine Encyclopedia: Structured Data
http://r2h.me/pcmagdata
9. @randyhoyt #wcto
Structured Data
Structured Unstructured
22. @randyhoyt #wcto
Theme vs. Plugin
Where does this custom code belong?
“ A common, yet unfortunate practice in the WordPress
community involves filling theme functions.php files with
tweaks and functionality that is key to a site.”
Theme Functions File (functions.php) Custom Functionality Plugin
• Code is executed just like a plugin • Completely separated from theme
• Activated (or deactivated) along with • Remains activated even theme is not
the theme
• Best for code related to functionality
• Best for code related to appearance
How to create your own WordPress functionality plugin
http://wpcandy.com/teaches/how-to-create-a-functionality-plugin
31. @randyhoyt #wcto
Custom Fields
Three Ways to Customize the Interface
Tutorial: “Reusable Custom Meta Boxes”
http://r2h.me/wpreuseable
Plugin: Advanced Custom Fields
http://wordpress.org/extend/plugins/advanced-custom-fields/
Library: Custom Meta Boxes
http://r2h.me/wpcmb
32. @randyhoyt #wcto
Library: Custom Meta Boxes
http://r2h.me/wpcmb
Custom Meta Boxes allow you to build clean, understandable
interfaces for entering metadata. There’s a ton of field options:
text, textarea, checkbox, dropdown list, WYSIWYG, and more.
38. @randyhoyt #wcto
Video, show fields, add values, save
39. @randyhoyt #wcto
Screenshot of dashboard, all assignments added
Ordering WordPress Post Types By A Custom Field
http://randyhoyt.com/wordpress/custom-post-type-ordering/
47. @randyhoyt #wcto
Child Theme Architecture
A WordPress child theme is a theme that inherits the
functionality of another theme, called the parent
theme, and allows you to modify or add functionality.
Making a child theme is very simple. Create a
directory, put a properly formatted style.css file in it,
and you have a child theme!
WordPress Codex: Child Themes
http://codex.wordpress.org/Child_Themes
59. @randyhoyt #wcto
Structured Data
Why use it?
1. Ease of Adding & Updating
2. Complex Formatting
3. Data Integrity
4. Cross-Platform Delivery
5. Logic-Based Automation
60. @randyhoyt #wcto
Shortcodes
When a shortcode is inserted in WordPress, it is
replaced with appropriate dynamic content produced
by a PHP function.
Let’s say we want to show the most recent posts in a
given post. We could use something like this:
[recent-posts]
Smashing Magazine: WordPress Shortcodes
http://r2h.me/wpshortcodes