WordPress as a CMS
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

WordPress as a CMS

on

  • 5,445 views

Matt Walters presentation from WordCamp RVA 2009 on using WordPress as a CMS / Theme Development

Matt Walters presentation from WordCamp RVA 2009 on using WordPress as a CMS / Theme Development

Statistics

Views

Total Views
5,445
Views on SlideShare
5,438
Embed Views
7

Actions

Likes
9
Downloads
164
Comments
0

2 Embeds 7

http://www.slideshare.net 6
http://blog.infonautica.net 1

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

WordPress as a CMS Presentation Transcript

  • 1. WordPress as a CMS
      • Methods & Theme/Plugin Development
  • 2. Contact Information
    • http://mattwalters.net/
    • http://twitter.com/mwalters/
    • http://twitter.com/atticusthedog
    • [email_address]
  • 3. WordPress as a CMS
      • WordPress
      • is just for
      • Blogging
    X
  • 4. WordPress as a CMS
      • WordPress is
      • not just for
      • Blogging
  • 5. WordPress as a CMS
      • Pages
      • Posts
      • New Articles
      • Site Blog
      • Custom fields available for other content
      • Sidebars
      • Imagery
      • Ajax content
  • 6. WordPress as a CMS
      • Examples
  • 7. WordPress as a CMS http://magazine.wsj.com/
  • 8. WordPress as a CMS http://www.evsc.virginia.edu/
  • 9. Theme Development
    • Front End Development Best Practices
      • Keep CSS in one file included via <link> in the header
      • Keep Javascript in one file included in the footer
      • Use image spirites if possible
      • Use shorthand (padding vs padding-left/right)
      • Minify CSS/JavaScript if possible
      • Use appropriate compression for images
  • 10. Theme Development
      • WordPress Codex
      • http://codex.wordpress.org/
      • Best Practices for distributing themes
      • Avoid packaging plugins
      • Support PHP 4 if possible :(
      • No paid advertisement
  • 11. Theme Development
    • Minimum of two files are required for a theme
      • style.css
      • index.php
  • 12. Theme Development
    • Style.css
      • Theme Name
      • Theme URI
      • Description
      • Version
      • Author
      • Author URI
      • Tags
  • 13. Theme Development
    • Functions.php
      • Contains custom functionality for theme
      • Can be procedural or Object Oriented
      • Can include plugin-like code
        • Create settings page in admin area
        • Apply filters
        • Perform actions
        • etc
  • 14. Theme Development Template Hierarchy Diagram
  • 15. Theme Development Template Hierarchy Diagram
  • 16. Theme Development
    • Child Themes
      • Style.css
        • Template: <define parent theme>
      • Other fields are same as a parent theme
      • Child theme templates override that of parent theme
      • Parent templates are inherited by child theme
  • 17. Theme Development
    • Base template structure
      • get_header()
        • Includes header.php from theme directory
      • The Loop
        • Display content
      • get_sidebar()
        • Includes sidebar.php from theme directory
      • get_footer()
        • Includes footer.php from theme directory
  • 18. Theme Development
    • The Loop
      • Required in template files
      • Displays Posts/Pages
      • Provides easy access to content data
        • the_title()
        • the_content()
        • the_excerpt()
        • the_permalink()
        • the_tags/category
        • etc ...
  • 19. Theme Development
    • bloginfo() / get_bloginfo()
      • Useful to create dynamic references
        • Blog name
        • Description
        • Site URL
        • Stylesheet Directory (theme directory)
        • and more ...
  • 20. Theme Development
    • Custom Fields
      • Two Components
        • Name / Value – Basically key=>value pair
      • Example Usage:
        • Assigning images to Posts/Pages
        • Serve as a data source for Ajax content
        • Provide multiple content areas for a page
  • 21. Theme Development
    • Using Custom Fields
      • get_post_meta($post_id, $key, [boolean])
        • $post_id = Primary key for Post/Page
        • $key = &quot;Name&quot; for custom field
        • [boolean] is optional
          • True: Returns single string for $key
          • False: Returns array witch values for each $key matched
  • 22. Theme Development
    • Theme Frameworks
      • Carrington
      • Sandbox
  • 23. Theme Development
      • Questions?
      • (or funny jokes?)