Book Image

WordPress Plugin Development Cookbook - Third Edition

By : Yannick Lefebvre
Book Image

WordPress Plugin Development Cookbook - Third Edition

By: Yannick Lefebvre

Overview of this book

WordPress is one of the most widely used, powerful, and open content management systems (CMSs). Whether you're a site owner trying to find the right extension, a developer who wants to contribute to the community, or a website developer working to fulfill a client's needs, learning how to extend WordPress' capabilities will help you to unleash its full potential. This book will help you become familiar with API functions to create secure plugins with easy-to-use administration interfaces. This third edition contains new recipes and up-to-date code samples, including new chapters on creating custom blocks for the block editor and integrating data from external sources. From one chapter to the next, you’ll learn 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, followed by recipes covering how to design administration panels, enhance the post editor with custom fields, store custom data, and even create custom blocks. You'll safely incorporate dynamic elements into web pages using scripting languages, learn how to integrate data from external sources, 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 (15 chapters)

Validating widget configuration options

The widget configuration panel that was put in place in the previous recipe is functional and allows users to change options and save updated values in the website database. That being said, all WordPress does by default when the user saves a widget is store values directly in the site database. Accepting user data blindly is never a good idea and can lead to functionality problems and security risks if wrong or malicious values are entered. Therefore, it is preferable to add data validation rules through the creation of an update method that will be able to verify configuration data before it is saved.

Getting ready

You should have already followed the Displaying widget configuration options recipe to have a starting point for this recipe. Alternatively, you can get the resulting code (ch10/ch10-book-review-widget/ch10-book-review-widget-v2.php) from the book's GitHub page and rename the file to ch10-book-review-widget.php. You should...