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)

Scheduling plugin data updates using WP-Cron

When working with external data sources, it's always important to consider the frequency and mechanism used to update this data, as well as caching data locally. While our code in the Optimizing plugin performance by storing external data using transients recipe is functional, it only checks whether the transient data is expired when users visit the shortcode. This slows down the page display if new data has to be fetched and processed. A better approach is to schedule our data update function to be periodically executed when any part of the site is visited, or even on a very specific schedule using WP-Cron.

Getting ready

You should have already followed the Optimizing plugin performance by storing external data using transients recipe to have a starting point for this recipe. Alternatively, you can get the resulting code (ch11/ch11-transit-feed/ch11-transit-feed-v1.php) from the book's GitHub page and rename the file as...