Your SlideShare is downloading. ×
0
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Getting Started With WordPress Development
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Getting Started With WordPress Development

7,761

Published on

A presentation from Iowa Code Camp 2010 by Kenny Younger (@kenny) and Andy Brudtkuhl (@abrudtkuhl)

A presentation from Iowa Code Camp 2010 by Kenny Younger (@kenny) and Andy Brudtkuhl (@abrudtkuhl)

Published in: Technology
0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
7,761
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
242
Comments
0
Likes
6
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Describe each table.
  • Transcript

    • 1. Intro To WordPress Development
      Kenny Younger (@kenny)
      &
      Andy Brudtkuhl (@abrudtkuhl)
    • 2. What does WordPress look like to the users?
      Let’s take a look!
    • 3. Database
    • 4. Database Schema
      Source: SchemaBank.com
    • 5. File Structure
    • 6. /
      wp-admin/
      wp-content/
      plugins/
      Each plugin usually has its own directory
      themes/
      Each theme has its own directory
      uploads/
      Created on first upload (default location)
      wp-includes/
      wp-config.php
    • 7. wp-config.php
      define('WP_ALLOW_MULTISITE', true);
    • 8. Debugging made easy
      Debugging flags added to wp-config.php:
      define( 'WP_DEBUG', true );
      define( 'SCRIPT_DEBUG', true );
      define( 'SAVEQUERIES', true );
      $wpdb->queries
      “All” hook:
      add_action( 'all', create_function( '', 'var_dump( current_filter() );' ) );
      Core Control Plugin:
      http://wordpress.org/extend/plugins/core-control/
      Dump Environment Plugin:
      http://wordpress.org/extend/plugins/dump_env/
      Source: http://www.andrewnacin.com/2010/04/23/5-ways-to-debug-wordpress/
    • 9. WordPress Themes
      What are themes? A way to skin WordPress
    • 10. What’s In A WordPress Theme?
      WordPress themes are a combination of PHP, CSS, and image files
      Requirements:
      HTML
      CSS
      Some PHP
    • 11. Anatomy Of A WordPress Theme
    • 12. Theme Structure
      Index.php
      includes header.php
      Includes sidebar.php
      Includes footer.php
    • 13. Standard Theme Architecture
      Homepage
      index.php
      home.php
      Single Post
      single.php
      Page
      page.php
      Category
      category.php
      archive.php
    • 19. The Stylesheet – style.css
      The comment headers in the style.css provide meta info to WP are are REQUIRED
      Thisstylesheet also controls the layout and design elements of your theme…
    • 20. Functions.php
      Contains theme related functions and commonly is used to generate dynamic sidebars
    • 21. The Loop
      If (havePosts)
      show post stuff
      Else
      nothing here!
      End if
    • 22. Template Tags
    • Theme Frameworks
    • 27. What Is A WordPress Plugin?
      Plugins are used to add or enhance functionalities of your WordPress site
    • 28. The Plugin Directory
      http://wordpress.org/extend/plugins/
    • 29. The Plugin API
      The API provides “Hooks” into WordPress
      No more hacking the core
      Made up of Actions and Filters
      Actions = functions triggered by events
      ie: Call function on user log in
      Filters = functions that modify information
      ie: Add facebook share button before post
    • 30. Plugin Data
      Sometimes it’s necessary to store data…
      For large amounts, create a new database table
      For small amounts, use WordPress “Options” – a table with key/value pairs
    • 31. Admin Menus
      Custom option panels for users to update settings for your plugin
      Adds options in WordPress Admin Dashboard
    • 32. Users & Roles & Capabilities
      WordPress is designed to handle multiple users – from admin and editors to subscribers
      5 Pre-Defined Roles
      Administrator
      Editor
      Author
      Contributor
      Subscriber
      http://codex.wordpress.org/Roles_and_Capabilities
    • 33. Custom Fields
      Allow attaching meta-data to posts.
      http://www.smashingmagazine.com/2010/04/29/extend-wordpress-with-custom-fields/
    • 34. Custom Post Types
      Used for:
      Real Estate Listing
      Event Calendar
      Movie Database
      Issue Management / Ticket System
      Etc.
    • 35. Custom Post Type Options
      label
      singular_label
      description
      public – query-able from public?
      menu_position
      menu_icon
      hierarchical
      query_var
      capability_type – permissions
      supports
      rewrite
      taxonomies
      register_meta_box_cb
      permalink_epmask
    • 36. Custom Post Types – Integration with the loop
      <?php $loop = new WP_Query( array( 'post_type' => my_custom_post_type', 'posts_per_page' => 10 ) ); ?>
      <?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
      <?phpthe_title( '<h2 class="entry-title"><a href="' . get_permalink() . '" title="' . the_title_attribute( 'echo=0' ) . '" rel="bookmark">', '</a></h2>' );
      ?>
      <div class="entry-content">
      <?phpthe_content(); ?>
      </div>
      <?phpendwhile; ?>
    • 37. Taxonomies
      What are taxonomies?
      register_taxonomy()
      Shows up in menu system
      Demo
      register_taxonomy(
      'actor',
      'post',
      array(
      'hierarchical' => false,
      'label' => __('Actors', 'series'),
      'query_var' => 'actor',
      'rewrite' => array( 'slug' => 'actors' )
      )
      );
    • 38. Core Development
      Versioning
      0.1 increments
      Based on time, not features
      Generally every 5-6 months
      0.0.1 – usually security fixes, other small bug fixes
      Always update!!
      Mailing lists:
      http://codex.wordpress.org/Mailing_Lists
      Trac:
      http://core.trac.wordpress.org
    • 39. Resources
      Planet - planet.wordpress.org
      WordPress Codex – codex.wordpress.org
      WordPress Forums – wordpress.org/support
      All Things WordPress- wordpress.alltop.com
      Core Development Blog – devel.wordpress.org
    • 40. August 7th, Downtown Des Moines Public Library
    • 41. Thanks!!!
      Kenny Younger (@kenny)
      &
      Andy Brudtkuhl (@abrudtkuhl)

    ×