Successfully reported this slideshow.
Your SlideShare is downloading. ×

Wordpress as a CMS

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 28 Ad

More Related Content

Slideshows for you (20)

Similar to Wordpress as a CMS (20)

Advertisement

Recently uploaded (20)

Wordpress as a CMS

  1. 1. Wordpress as a CMS Not just another list of plugins Brad Touesnard http://bradt.ca brad@touesnard.com BarCampVancouver2008 September 27th, 2008
  2. 2. Client: “I want a CMS.”
  3. 3. Why not a framework? • Need to design a backend • Usability • Need to code a backend • Difficult problems (WYSIWYG integration, file upload, content filters, etc) • Security • Quality assurance
  4. 4. Why not a CMS? Joomla Ez Publish Mambo Typo3 XOOPS bitweaver Expression Engine Drupal
  5. 5. Why not a CMS? Joomla Ez Publish Mambo Wordpress is a CMS! Typo3 XOOPS bitweaver Expression Engine Drupal
  6. 6. Why not a CMS? Joomla Ez Publish Mambo Wordpress is a CMS! Typo3 XOOPS and it’s better... Expression bitweaver Engine Drupal
  7. 7. Why is it better?
  8. 8. Backend Interface • Designed by usability experts at Happy Cog • Clean, Standards Compliant XHTML filters • Flawless WYSIWYG Integration • Easy media uploading and embedding
  9. 9. Wordpress.com • Very popular • #29 trafficed site in the US (via Quantcast) • Alexa Rank: 29 • 4,209,042 blogs, 153,086 new posts, 37,653,000 words today* • Tons of user feedback • An easy to sell to clients • Corporate support: Automattic *All stats on this slide were recorded September 24th, 2008.
  10. 10. Malleable • Plugin Hooks • Template Tags • Backend customization
  11. 11. Community • Wordpress.org • Forums • Documentation • Plugins • Themes
  12. 12. Challenges
  13. 13. Case Study: GoHave1.com
  14. 14. Case Study: GoHave1.com
  15. 15. Case Study: GoHave1.com
  16. 16. Case Study: GoHave1.com
  17. 17. Custom Fields • Store post meta data about posts • Author (name, location, photo, blurb) • Feature story • Quick facts
  18. 18. GoHave1.com: Displaying a Feature Story $custom = get_post_custom(); if (isset($custom['feature_story'][0])) { echo $custom['feature_story'][0]; }
  19. 19. Limitations of Custom Fields • No WYSIWYG • Only relates to a single post
  20. 20. Create Relationships with Custom Fields • Store related post ID in custom field • Retrieve related post using the post ID POST (12) POST Feature Story: 14 (14) POST Quick Facts: 58 (58)
  21. 21. Relationships with Custom Fields: Benefits • Users can edit using the WYSIWYG • We can feature posts on several pages without copying
  22. 22. GoHave1.com: Retrieving a Feature Story $custom = get_post_custom(); if (isset($custom['feature_story'][0])) { $id = $custom['feature_story'][0]; $story =& get_post($id); }
  23. 23. print_r($story); stdClass Object ( [ID] => 23 [post_author] => 1 [post_date] => 2008-03-25 14:48:37 [post_date_gmt] => 2008-03-25 22:48:37 [post_content] => I never entertained the idea... [post_title] => Jo Krombholz's Story [post_category] => 0 [post_excerpt] => I never entertained the idea... [post_status] => publish [comment_status] => open [ping_status] => open [post_password] => [post_name] => jo-krombholz [to_ping] => [pinged] => [post_modified] => 2008-04-29 12:08:40 [post_modified_gmt] => 2008-04-29 20:08:40 [post_content_filtered] => [post_parent] => 0 [guid] => http://gohave1.com/archives/augue-ipsum-orci-dolor-interdum-enim/ [menu_order] => 0 [post_type] => post [post_mime_type] => [comment_count] => 1 [ancestors] => Array )
  24. 24. Relationships with Custom Fields: Problems “You want me Usability nightmare! to do what??” A. Posts that aren’t posts B. Managing post IDs
  25. 25. Future Improvements
  26. 26. Problem A: Posts that aren’t posts Solution: Develop a new post type called ‘element’ Won’t show up in post lists
  27. 27. Problem B: Managing Post IDs Solution: Simple post selection interface Add panel below Categories Include posts of type ‘element’
  28. 28. Final Thoughts • Wordpress is not for every situation • Only 90% of them • As for the other 10%... • Frameworks might work for you • Write it from scratch!

×