WordPress Plugin Development Cookbook - Second Edition

Learn to create plugins for WordPress 4.x to deliver custom projects or share with the community through detailed step-by-step recipes and code examples

WordPress Plugin Development Cookbook - Second Edition

Yannick Lefebvre

Learn to create plugins for WordPress 4.x to deliver custom projects or share with the community through detailed step-by-step recipes and code examples
Mapt Subscription
FREE
$29.99/m after trial
eBook
$22.40
RRP $31.99
Print + eBook
$39.99
RRP $39.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$22.40
$39.99
$29.99p/m after trial
RRP $31.99
RRP $39.99
Subscription
eBook
Print + eBook
Start 30 Day Trial
Subscribe and access every Packt eBook & Video.
 
  • 5,000+ eBooks & Videos
  • 50+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 
Preview in Mapt

Book Details

ISBN 139781788291187
Paperback386 pages

Book Description

WordPress is a popular, powerful, and open Content Management System. Learning how to extend its capabilities allows you to unleash its full potential, whether you're an administrator trying to find the right extension, a developer with a great idea to enhance the platform for the community, or a website developer working to fulfill a client's needs. This book shows readers how to navigate WordPress' vast set of API functions to create high-quality plugins with easy-to-configure administration interfaces.

With new recipes and materials updated for the latest versions of WordPress 4.x, this second edition teaches you how to create plugins of varying complexity ranging from a few lines of code to complex extensions that provide intricate new capabilities.

You'll start by using the basic mechanisms provided in WordPress to create plugins and execute custom user code. You will then see how to design administration panels, enhance the post editor with custom fields, store custom data, and modify site behavior based on the value of custom fields. You'll safely incorporate dynamic elements on web pages using scripting languages, and build new widgets that users will be able to add to WordPress sidebars and widget areas.

By the end of this book, you will be able to create WordPress plugins to perform any task you can imagine.

Table of Contents

Chapter 1: Preparing a Local Development Environment
Introduction
Installing a web server on your computer
Downloading and configuring a local WordPress installation
Creating a local Subversion repository
Importing initial files to a local Subversion repository
Checking out files from a Subversion repository
Committing changes to a Subversion repository
Installing a dedicated code editor/text editor
Chapter 2: Plugin Framework Basics
Introduction
Creating a plugin file and header
Adding output content to page headers using plugin actions
Using WordPress path utility functions to load external files and images
Modifying the site generator meta tag using plugin filters
Adding text after each item's content using plugin filters
Inserting link statistics tracking code in page body using plugin filters
Troubleshooting coding errors and printing variable content
Creating a new simple shortcode
Creating a new shortcode with parameters
Creating a new enclosing shortcode
Loading a style sheet to format plugin output
Writing plugins using object-oriented PHP
Chapter 3: User Settings and Administration Pages
Introduction
Creating default user settings on plugin initialization
Storing user settings using arrays
Removing plugin data on deletion
Creating an administration page menu item in the settings menu
Creating a multi-level administration menu
Adding menu items leading to external pages
Hiding items which users should not access from the default menu
Rendering the admin page contents using HTML
Processing and storing plugin configuration data
Displaying a confirmation message when options are saved
Adding custom help pages
Rendering the admin page contents using the Settings API
Accessing user settings from action and filter hooks
Formatting admin pages using meta boxes
Splitting admin code from the main plugin file to optimize site performance
Storing style sheet data in user settings
Managing multiple sets of user settings from a single admin page
Creating network-level admin pages
Chapter 4: The Power of Custom Post Types
Introduction
Creating a custom post type
Adding a new section to the custom post type editor
Displaying single custom post type items using a custom layout
Displaying custom post type data in shortcodes
Adding custom categories for custom post types
Adding custom fields to categories
Hiding the category editor from the custom post type editor
Displaying additional columns in the custom post list page
Adding filters for custom categories to the custom post list page
Adding Quick Edit fields for custom categories
Updating page title to include custom post data using plugin filters
Chapter 5: Customizing Post and Page Editors
Introduction
Capturing and displaying information using custom meta boxes
Displaying custom post data using filter functions
Hiding the Custom Field section in the post editor
Extending the post editor to allow users to upload files directly
Chapter 6: Accepting User Content Submissions
Introduction
Creating a client-side content submission form
Saving user-submitted content in custom post types
Sending email notifications upon new submissions
Implementing a CAPTCHA on user forms using an online service
Using a local library to implement a CAPTCHA on user forms
Chapter 7: Customizing User Data
Introduction
Adding custom fields to the user editor
Processing and storing user custom data
Displaying new user data in user list page
Using custom user data in containing shortcode
Chapter 8: Creating Custom MySQL Database Tables
Introduction
Creating new database tables
Deleting custom tables on plugin removal
Updating custom table structure on plugin upgrade
Displaying custom table data on an admin page
Inserting and updating records in custom tables
Deleting records from custom tables
Displaying custom database table data in shortcodes
Implementing a search function to retrieve custom table data
Importing data from a user file into custom tables
Chapter 9: Leveraging JavaScript, jQuery, and AJAX Scripts
Introduction
Safely loading jQuery onto WordPress web pages
Displaying a pop-up dialog using the built-in ThickBox plugin
Controlling pop-up dialog display using shortcodes
Displaying a calendar day selector using the Datepicker plugin
Adding tooltips to admin page form fields using the TipTip plugin
Using AJAX to dynamically update partial page contents
Chapter 10: Adding New Widgets to the WordPress Library
Introduction
Creating a new widget in WordPress
Displaying configuration options
Validating configuration options
Implementing the widget display function
Adding a custom dashboard widget
Adding a custom widget to the network dashboard
Chapter 11: Enabling Plugin Internationalization
Introduction
Changing the WordPress language configuration
Adapting default user settings for translation
Making admin page code ready for translation
Modifying shortcode output for translation
Translating text strings using Poedit
Loading a language file in the plugin initialization
Chapter 12: Distributing Your Plugin on wordpress.org
Introduction
Creating a README file for your plugin
Applying for your plugin to be hosted on WordPress.org
Uploading your plugin using Subversion
Providing plugin banner and thumbnail images

What You Will Learn

  • Discover how to register user callbacks with WordPress, forming the basis of plugin creation
  • Explore the creation of administration pages and adding new content management sections through custom post types and custom database tables.
  • Improve your plugins by customizing the post and page editors, categories and user profiles, and creating visitor-facing forms
  • Make your pages dynamic using Javascript, AJAX and adding new widgets to the platform.
  • Learn how to add support for plugin translation and distribute your work to the WordPress community.

Authors

Table of Contents

Chapter 1: Preparing a Local Development Environment
Introduction
Installing a web server on your computer
Downloading and configuring a local WordPress installation
Creating a local Subversion repository
Importing initial files to a local Subversion repository
Checking out files from a Subversion repository
Committing changes to a Subversion repository
Installing a dedicated code editor/text editor
Chapter 2: Plugin Framework Basics
Introduction
Creating a plugin file and header
Adding output content to page headers using plugin actions
Using WordPress path utility functions to load external files and images
Modifying the site generator meta tag using plugin filters
Adding text after each item's content using plugin filters
Inserting link statistics tracking code in page body using plugin filters
Troubleshooting coding errors and printing variable content
Creating a new simple shortcode
Creating a new shortcode with parameters
Creating a new enclosing shortcode
Loading a style sheet to format plugin output
Writing plugins using object-oriented PHP
Chapter 3: User Settings and Administration Pages
Introduction
Creating default user settings on plugin initialization
Storing user settings using arrays
Removing plugin data on deletion
Creating an administration page menu item in the settings menu
Creating a multi-level administration menu
Adding menu items leading to external pages
Hiding items which users should not access from the default menu
Rendering the admin page contents using HTML
Processing and storing plugin configuration data
Displaying a confirmation message when options are saved
Adding custom help pages
Rendering the admin page contents using the Settings API
Accessing user settings from action and filter hooks
Formatting admin pages using meta boxes
Splitting admin code from the main plugin file to optimize site performance
Storing style sheet data in user settings
Managing multiple sets of user settings from a single admin page
Creating network-level admin pages
Chapter 4: The Power of Custom Post Types
Introduction
Creating a custom post type
Adding a new section to the custom post type editor
Displaying single custom post type items using a custom layout
Displaying custom post type data in shortcodes
Adding custom categories for custom post types
Adding custom fields to categories
Hiding the category editor from the custom post type editor
Displaying additional columns in the custom post list page
Adding filters for custom categories to the custom post list page
Adding Quick Edit fields for custom categories
Updating page title to include custom post data using plugin filters
Chapter 5: Customizing Post and Page Editors
Introduction
Capturing and displaying information using custom meta boxes
Displaying custom post data using filter functions
Hiding the Custom Field section in the post editor
Extending the post editor to allow users to upload files directly
Chapter 6: Accepting User Content Submissions
Introduction
Creating a client-side content submission form
Saving user-submitted content in custom post types
Sending email notifications upon new submissions
Implementing a CAPTCHA on user forms using an online service
Using a local library to implement a CAPTCHA on user forms
Chapter 7: Customizing User Data
Introduction
Adding custom fields to the user editor
Processing and storing user custom data
Displaying new user data in user list page
Using custom user data in containing shortcode
Chapter 8: Creating Custom MySQL Database Tables
Introduction
Creating new database tables
Deleting custom tables on plugin removal
Updating custom table structure on plugin upgrade
Displaying custom table data on an admin page
Inserting and updating records in custom tables
Deleting records from custom tables
Displaying custom database table data in shortcodes
Implementing a search function to retrieve custom table data
Importing data from a user file into custom tables
Chapter 9: Leveraging JavaScript, jQuery, and AJAX Scripts
Introduction
Safely loading jQuery onto WordPress web pages
Displaying a pop-up dialog using the built-in ThickBox plugin
Controlling pop-up dialog display using shortcodes
Displaying a calendar day selector using the Datepicker plugin
Adding tooltips to admin page form fields using the TipTip plugin
Using AJAX to dynamically update partial page contents
Chapter 10: Adding New Widgets to the WordPress Library
Introduction
Creating a new widget in WordPress
Displaying configuration options
Validating configuration options
Implementing the widget display function
Adding a custom dashboard widget
Adding a custom widget to the network dashboard
Chapter 11: Enabling Plugin Internationalization
Introduction
Changing the WordPress language configuration
Adapting default user settings for translation
Making admin page code ready for translation
Modifying shortcode output for translation
Translating text strings using Poedit
Loading a language file in the plugin initialization
Chapter 12: Distributing Your Plugin on wordpress.org
Introduction
Creating a README file for your plugin
Applying for your plugin to be hosted on WordPress.org
Uploading your plugin using Subversion
Providing plugin banner and thumbnail images

Book Details

ISBN 139781788291187
Paperback386 pages
Read More

Read More Reviews

Recommended for You

WordPress Web Application Development - Second Edition Book Cover
WordPress Web Application Development - Second Edition
$ 39.99
$ 28.00
WordPress Search Engine Optimization - Second Edition Book Cover
WordPress Search Engine Optimization - Second Edition
$ 35.99
$ 25.20
WordPress Theme Development : Beginner's Guide - Third Edition Book Cover
WordPress Theme Development : Beginner's Guide - Third Edition
$ 23.99
$ 16.80
WordPress Plugin Development: Beginner's Guide Book Cover
WordPress Plugin Development: Beginner's Guide
$ 23.99
$ 16.80