WordPress Plugin Development: Beginner's Guide Table Of Contents


Table of Contents

Preface
Chapter 1: Preparing for WordPress Development
Chapter 2: Social Bookmarking
Chapter 3: Live Blogroll
Chapter 4: The Wall
Chapter 5: Snazzy Archives
Chapter 6: Insights for WordPress
Chapter 7: Post Types
Chapter 8: Development Goodies
Index

  • Chapter 1: Preparing for WordPress Development
    • How will you benefit?
      • WordPress features
        • More sites means more opportunities
        • Big players use it
        • Urgent response to security issues
        • Flexibility
        • Search engines friendly
        • Easy to use
        • Social aspect
      • Plugins as tool for promotion
      • Dogfooding WordPress plugins
    • Challenges involved
      • Development
      • Security
      • Work after development
        • Localization
        • Documentation
        • Support
        • Promotion
    • Plugins developed in this book
      • Digg This
      • Live Blogroll
      • The Wall
      • Snazzy Archives
      • Insights
      • Post Types
      • Development Goodies
    • Tools for the job
      • WordPress
      • Text editor
      • FTP client
      • Web browser
        • Firebug
        • Ubiquity
        • Screengrab
        • IE tab
    • Final notes
      • Installing and managing plugins
      • Searching documentation
    • Summary
  • Chapter 2: Social Bookmarking
    • Plugging in your first plugin
      • Time for action – Create your first plugin
    • The plugin information header
    • Checking WordPress versions
    • Checking the plugin
      • Time for Action – Testing the version check
  • Displaying a Digg button
    • Time for Action – Implement a Digg link
  • Using the Digg API
  • Acquiring post information
    • Post permalink URL
  • Editing the theme files
  • WordPress plugin hooks
    • Time for Action – Use a filter hook
  • WordPress hooks
    • Filter hooks
    • Action hooks
    • Practical filters and actions examples
  • Adding a Digg button using JavaScript code
    • Time for Action – Implement a Digg button
  • Conditional Tags
  • Styling the output
    • Time for Action – Use CSS to position the button
  • Summary
  • jQuery JavaScript library
    • Implementing a mouse hover event in jQuery
      • Time for action – Creating a hover event with jQuery
    • JavaScript and WordPress
      • Initializing jQuery
      • Expanding jQuery knowledge
    • Creating the pop-up with CSS
      • Time for action – Apply CSS to the popup
  • Demystifying Ajax
    • Simple example of using Ajax
      • Time for action – Use Ajax to dynamically retrieve feed posts
    • Using JavaScript with WordPress
    • Parsing parameters using wp_localize_script
    • Ajax and WordPress
      • Ajax in admin panel
    • jQuery.ajax method
      • Time for action – Use advanced Ajax call
    • Ajax script security using nonces
      • Time for action – Add a security nonce
  • Summary
  • Chapter 4: The Wall
    • The main concepts behind the Wall plugin
    • Creating a widget
      • Time for action – Create a 'Hello World!' widget
    • Register widgets with description
  • Widget controls
    • Time for action – Expanding the widget with controls
  • WordPress options
  • Display widget control
  • Handling widget input
  • Handling widget output
  • Create a WordPress page from the code
    • Time for action – Insert a page
  • Handling user input
    • Time for action – Create the wall comment form
  • Managing Ajax comment submit
    • Time for action – Save the comments
  • Using Ajax to submit forms
  • Saving comments in WordPress post
  • Dynamically load comments
    • Time for action – Display the comments
  • WordPress database query
  • Comment output
  • Displaying the comments
  • Ajax security
    • Time for action – Display the comments
  • Summary
  • Showing template output with shortcodes
    • Time for action – Use a shortcode
  • Shortcode API
    • Enclosing shortcodes
  • Custom templates
    • Time for action – Create a custom template
  • Prepare archives
    • Time for action – Show archives of posts
  • Get all posts from database
  • Using a regular expression
  • Retrieve comment count for a post
  • Using output buffers
  • Apply styling and jQuery to archives
    • Time for action – Style the archive view
    • Time for action – Use jQuery to allow user interaction
  • Creating plugin options page
    • Time for action – Create an options page
  • Managing plugin options
  • Handling options form
  • Adding administration pages
  • Use plugin options
    • Time for action – Apply the plugin options
  • Caching the plugin output
    • Time for action – Create archives cache
  • Summary
  • Searching the posts
    • Time for action – Display a list of matching posts
  • Interacting with tinyMCE
    • Time for action – Insert the link into tinyMCE
  • Using Flickr API
    • Time for action – Display Flickr photos
  • Using third-party solutions—phpFlickr
  • Creating a tinyMCE plugin
    • Time for action – Adding a button to tinyMCE
  • Create a functional tinyMCE plugin window
    • Time for action – Open a tinyMCE window
  • Summary
  • Chapter 7: Post Types
    • Handling localization
      • Time for action – Create plugin and add localization
    • Optimizing localization usage
    • How does localization work?
  • Adding a post template
    • Time for action – Create 'add photo' post template
  • Backend CSS classes
  • Handling file and image uploads
    • Time for action – Handle uploaded image
  • Using custom fields
    • Adding custom fields
    • Retrieving custom fields
  • Quick post a link
    • Time for action – Add link template
  • Tinkering with WordPress backend menus
    • Time for action - Remove 'Link' from the Write page
  • Programming the Manage panel
    • Time for action – Add post type column in the Manage panel
  • Modifying an existing column
  • Manage screen search filter
    • Time for action – Add a search filter box
  • Handling error messages
    • Time for action – Adding support for errors
  • User roles and capabilities
    • Time for action – Add user capability checks
  • Summary
  • Chapter 8: Development Goodies
    • Creating Localization files
      • Time for action - Create a POT file
      • Updating POT file
      • Time for action – Perform translation
      • Updating translation
  • Documentation and support
    • Plugin readme file
      • Time for action – Create a sample plugin readme.txt file
    • Sections of readme.txt
      • General information
      • Special codes
      • Screenshots
      • Installation instructions
    • Plugin homepage
    • Providing support
  • Code management and plugin repository
    • Requesting repository access
    • Using SVN
      • Time for action - Manage a local repository using SVN
      • Tagging a new version
    • Using WordPress development SVN
    • Local copy of plugin repository
  • Promotion
    • Plugin promotion checklist
  • General plugin development guidelines
    • Security
    • Performance
    • Re-using resources
    • Keeping API up-to-date
  • WordPress MU development
  • WordPress and GPL
  • Online resources
    • WordPress documentation (WordPress Codex)
    • WordPress development news
      • WordPress blog
      • WordPress development updates
      • WordPress Trac
      • WordPress dev IRC channel
    • Debugging and testing
      • Unit testing
      • Automated tests
    • Mailing Lists
      • WP hackers
      • WP professionals
      • Other mailing lists
    • Podcasts
      • WordCast
      • WordPress Weekly
    • Author's (Vladimir Prelovac's) web site
  • Summary

Code Download and Errata
Packt Anytime, Anywhere
Register Books
Print Upgrades
eBook Downloads
Video Support
Contact Us
Awards Voting Nominations Previous Winners
Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Resources
Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software