文件名称:WordPress 3 Plugin Development Essentials.pdf
文件大小:5.37MB
文件格式:PDF
更新时间:2022-09-03 07:38:13
WordPress Plugin Development Essentials Table of Contents Preface 1 Chapter 1: Preparing for WordPress Development 7 WordPress background 7 Extending WordPress 8 Understanding WordPress architecture 8 Templating 9 Introducing plugins 9 Summarizing architecture 10 Tools for web development 11 WordPress 11 Mac 12 Windows 12 Text editor 12 Using an IDE 13 FTP client 14 MySQL client 14 Coding best practices 15 Basic organization 15 Isolate tasks into functions 16 Use classes 16 Use descriptive variable names 16 Use descriptive function names 17 Separate logic and display layers 17 Go modular, to a point 18 Avoid short tags 18 Planning ahead / starting development 18 Interfaces 19 Localization 19 Table of Contents [ ii ] Documentation for the developer 19 Version control 20 Environment 20 Tests 20 Security 21 Printing user-supplied data to a page 21 Using user-supplied data to construct database queries 22 Debugging 22 Clearing your browser cache 23 Updating your php.ini file 23 Configuring your wp-config.php file 23 Checking your syntax 24 Checking values 24 Exercise 25 Summary 26 Chapter 2: Anatomy of a Plugin 29 Deconstructing an existing plugin: "Hello Dolly" 29 Activating the plugin 29 Examining the hello.php file 30 Information header 30 Exercise—breaking the header 30 Location, name, and format 31 Understanding the Includes 32 Exercise – parse errors 32 Bonus for the curious 33 User-defined functions 34 Exercise—an evil functionless plugin 34 What just happened 36 Omitting the closing "?>" PHP tag 38 A better example: Adding functions 38 Referencing hooks via add_action() and add_filter() 39 Actions versus Filters 40 Exercise—actions and filters 40 Exercise—filters 41 Reading more 43 Summary 44 Chapter 3: Social Bookmarking 45 The overall plan 46 Proof of concept 46 Avoiding conflicting function names 47 Table of Contents [ iii ] The master plugin outline 48 The plugin information header 50 In your browser—information header 51 Adding a link to the post content 51 Documenting our functions 52 In your browser—linking to the post content 52 Adding JavaScript to the head 52 Making our link dynamic 55 Adding a button template 57 Getting the post URL 58 In your browser—getting the post URL 60 Getting the post title 60 Getting the description 60 Getting the media type 62 Getting the post topic 62 In your browser—title, description, and topic 64 Checking WordPress versions 64 Summary 66 Chapter 4: Ajax Search 67 What is Ajax? 67 The overall plan 70 The proof of concept mock up 71 Hooking up jQuery 74 Test that jQuery has loaded 74 What happened? 75 Using the FireBug console directly 75 Writing HTML dynamically to a target div 76 Multi-line strings 77 Viewing the generated page 78 Anonymous functions 79 Adding a div on the fly 79 Create a listener 80 Fetching data from another page 81 Creating our plugin 83 Creating index.php and activating the plugin 84 Creating our first PHP class 85 Updating index.php 86 Testing your version of PHP 87 Testing for searchable pages 89 Adding your own CSS files 90 Adding your search handler 92 Adding your own JavaScript 92 Handling Ajax search requests 96 Table of Contents [ iv ] Formatting your search results 99 Summary 102 Chapter 5: Content Rotator 105 The plan 105 Widget overview 106 Preparation 106 Activating your plugin 110 Activating the widget 110 Having problems? 111 Parents and children: extending classes 112 Objects vs. libraries: when to use static functions 114 Add custom text 115 Adding widget options 116 Generating random content 121 Expiration dates: adding options to our widget 125 Expiration dates: enforcing the shelf life 126 Explaining the $instance 127 Adding a custom manager page 129 Adding options to the custom manager page 131 Randomizing content from the database 134 Review of PHP functions used 135 Summary 135 Chapter 6: Standardized Custom Content 137 What WordPress does for you: custom fields 138 What WordPress doesn't do for you 138 Standardizing a post's custom fields 139 Creating a new plugin 139 Removing the default WordPress form for custom fields 140 Creating our own custom meta box 143 Defining custom fields 145 Generating custom form elements 149 Saving custom content 155 Having trouble saving data? 157 Displaying custom data in your Templates 158 Copying a theme 158 Modifying the theme 159 Granular display of custom fields 161 Bonus for the MySQL curious 163 Known limitations 164 Summary 165 Table of Contents [ v ] Chapter 7: Custom Post Types 167 Background: What's in a name? 168 Understanding register_post_type() 169 Customizing our post type 175 Using shortcodes 177 Testing our shortcode 180 Customizing our plugin 181 Creating a settings shortcut link 186 Cleaning up when uninstalling 188 Summary 190 Chapter 8: Versioning Your Code with Subversion (SVN) 191 Why Subversion? 192 Understanding the terminology and concepts 192 Checking out a local working copy 193 SVN folder structure 194 Checkout, revisited 196 Setting up an SVN repository 197 Checking out a local working copy of our repo 198 Adding files 199 Committing changes to the repository 200 Overcoming errors 201 Verifying the new state of your repository 202 Adding more files to your repository 203 Removing files from the repository 204 Updating your working copy 204 Tagging a version 205 Reverting an entire project 206 Reverting a single file 207 Moving files 208 Exporting your working copy 208 Quick reference 209 Summary 211 Chapter 9: Preparing Your Plugin for Distribution 213 Public enemy number one: PHP notices 213 PHP short tags 215 Conflicting names 215 Modifying loader.php 220 Testing WordPress version 222 Testing PHP version 222 Testing MySQL version 223 Download from Wow! eBook