Book Image

Wordpress Development Quick Start Guide

By : Rakhitha Nimesh Ratnayake
Book Image

Wordpress Development Quick Start Guide

By: Rakhitha Nimesh Ratnayake

Overview of this book

WordPress is the most used CMS in the world and is the ideal way to share your knowledge with a large audience or build a profitable business. Getting started with WordPress development has often been a challenge for novice developers, and this book will help you find your way. This book explains the components used in WordPress development, when and where to use them, and why you should be using each component in specific scenarios. You begin by learning the basic development setup and coding standards of WordPress. Then you move into the most important aspects of the theme and plugin development process. Here you will also learn how themes and plugins fit into the website while learning about a range of techniques for extending themes and plugins. With the basics covered, we explore many of the APIs provided by WordPress and how we can leverage them to build rapid solutions. Next, we move on to look at the techniques for capturing, processing, and displaying user data when integrating third-party components into the site design. Finally, you will learn how to test and deploy your work with secure and maintainable code, while providing the best performance for end users.
Table of Contents (16 chapters)
Title Page
Copyright and Credits
Packt Upsell

Building an object-oriented plugin

Up to this point, we created several plugins in previous chapters. However, we used the procedural approach, where we define the necessary hooks and functions directly inside the main plugin file or sub-files. As the website or application gets complex, we will have a hard time managing the development with the procedural method. So, we need a way to use best development practices and modularize the code into necessary classes. In this section, we are going to look at the basic structure for creating a plugin with object-oriented concepts. Let's consider the following code for the OOP-based plugin structure:

if( !class_exists( 'WPQuick_CPT' ) ) {   
  class WPQuick_CPT{   
    private static $instance;
    public static function instance() { 
      if ( ! isset( self::$instance ) && ! ( self::$instance instanceof WPQuick_CPT ) ) {
        self::$instance = new WPQuick_CPT();