01 - Introduction
01_04 - Excercise Files and other Resources
Project Repository : rocket-books
02 -Development Setup
02_01 - Tools Required
PhpStorm: The Lightning-Smart IDE for PHP Programming by JetBrains
Google Chrome: The Most Secure Browser on the Web
WampServer, la plate-forme de développement Web sous Windows - Apache, MySQL, PHP
02_02 - Install WordPress using WAMP
Recommended database charset and collation for WordPress | Bram Van den Bulcke
Blog Tool, Publishing Platform, and CMS — WordPress
02_03 - Wordpress Coding Standards - Why and How
Writing a Plugin « WordPress Codex
Best Practices – Make WordPress Core
WordPress Coding Standards – Make WordPress Core
PHP Coding Standards – Make WordPress Core
phpcs - Visual Studio Marketplace
phpMD / PHP CodeSniffer Plugin - NetBeans Plugin detail
PHP Code Sniffer - Help | PhpStorm
02_04 - Install Php Code Snifer and Wordpress Coding Standards
Install Php Code Snifer and Wordpress Coding Standards.md
02_05 - PhpStorm - Configuring Wordpress Coding Standards
PhpStorm - Configuring WordPress Coding Standards.md
03 - For Beginners
03_02 - Custom Post Type
03_03 - Shortcodes
Simple Social Media Share Buttons – Social Sharing for Everyone | WordPress.org
03_04 - Settings Page
add_option() | Function | WordPress Developer Resources
register_setting() | Function | WordPress Developer Resources
test unserialize online - general PHP functions - functions-online
Settings API « WordPress Codex
03_06 - How WordPress loads plugin
Header Requirements | Plugin Developer Handbook | WordPress Developer Resources
03_07 - Action Hooks
add_action() | Function | WordPress Developer Resources
Plugin API/Action Reference « WordPress Codex
Function Reference/remove action « WordPress Codex
Hook Reference | WooCommerce Code Reference
03_08 - Filter Hooks
apply_filters() | Function | WordPress Developer Resources
add_filter() | Function | WordPress Developer Resources
Plugin API/Filter Reference « WordPress Codex
04 - Boilerplate
04_01 - What is BoilerPlate
The WordPress Plugin Boilerplate | A Foundation For Building High-Quality WordPress Plugins
GitHub - DevinVinson/WordPress-Plugin-Boilerplate
04_02 - Getting Started with Boilerplate
GitHub - DevinVinson/WordPress-Plugin-Boilerplate
How to Batch Rename Multiple Files in Windows
How to rename multiple files at once on Mac | iMore
WordPress Plugin Boilerplate Generator | Ready to use WordPress Plugin Boilerplate
04_03 - Tips for Using Boilerplate Generator
WordPress Plugin Boilerplate Generator | Ready to use WordPress Plugin Boilerplate
Add your Plugin | WordPress.org
Very Simple Event List | WordPress.org
Simple Social Media Share Buttons – Social Sharing for Everyone | WordPress.org
04_04 - Structure of Plugin Boilerplate
Best Practices | Plugin Developer Handbook | WordPress Developer
Resources
Activation / Deactivation Hooks | Plugin Developer Handbook | WordPress Developer Resources
Uninstall Methods | Plugin Developer Handbook | WordPress Developer Resources
04_05 - Defining helper Constants
Checklist for Boilerplate Generator - Google Forms
05 - Custom Post Types
05_01 - Register Custom Post Type
Function Reference/register post type « WordPress Codex
05_05 - Revisiting Need for Boilerplate
PHP Coding Standards Draft Proposal – Make WordPress Core
PHP Documentation Standards – Make WordPress Core
Best Practices | Plugin Developer Handbook | WordPress Developer Resources
05_06 - Fixing 404 for Custom Post Type
Uninstall Methods | Plugin Developer Handbook | WordPress Developer Resources
Function Reference/register post type « WordPress Codex
05_07 - Template for Single Post Type
Show Current Template | WordPress.org
05_08 - How Wordpress loads a required Template
vitorcon/twentysixteen-chd: Twenty Sixteen Child Theme for Wordpress
The WordPress Template Hierarchy - a visualization resource
Template Hierarchy | Theme Developer Handbook | WordPress Developer Resources
05_09 - Template for Single Post Type using Template Loader
GaryJones/Gamajo-Template-Loader
Template File Loaders in Plugins - Pippins Plugins
now-hiring/now-hiring-global-functions.php at master · slushman/now-hiring
Plugin API/Filter Reference/single template « WordPress Codex
get_template_part() | Function | WordPress Developer Resources
05_10 - Archive CPT Template using Template Loader
Lorem Ipsum - All the facts - Lipsum generator
Plugin API/Filter Reference/archive template « WordPress Codex
496 Awesome Book Photos · Pexels · Free Stock Photos
05_11 - Custom Post Type Loop
Basic CSS for Flex Card based layout
the_excerpt() | Function | WordPress Developer Resources
the_content() | Function | WordPress Developer Resources
Function Reference/post class « WordPress Codex
06 - Metabox and Custom Fields
06_01 - Metabox for Custom Post Type
Custom Meta Boxes | Plugin Developer Handbook | WordPress Developer Resources
06_02 - Add Metabox to CPT
add_meta_box() | Function | WordPress Developer Resources
Plugin API/Action Reference/add meta boxes « WordPress Codex
do_meta_boxes | Hook | WordPress Developer Resources
__() | Function | WordPress Developer Resources
06_03 - Metabox with Gutenberg Editor
Classic Editor | WordPress.org
06_04 - Add Custom Fields to Metabox
get_post_meta() | Function | WordPress Developer Resources
Function Reference/update post meta « WordPress Codex
Function Reference/add post meta « WordPress Codex
save_post_{$post->post_type} | Hook | WordPress Developer Resources
_e() | Function | WordPress Developer Resources
06_05 - nonce fields and nonce verification
Function Reference/wp nonce field « WordPress Codex
Function Reference/wp verify nonce « WordPress Codex
WordPress Nonces « WordPress Codex
06_06 - Enhancing Security for Save Method
Function Reference/current user can « WordPress Codex
Function Reference/wp get current user « WordPress Codex
Roles and Capabilities « WordPress Codex
06_07 - Sanitize Custom Fields input
Validating Sanitizing and Escaping User Data « WordPress Codex
Data Validation « WordPress Codex
sanitize_text_field() | Function | WordPress Developer Resources
Function Reference/esc html « WordPress Codex
Function Reference/sanitize key « WordPress Codex
06_08 - Validate Custom Fields input - Part 1
Function Reference/checked « WordPress Codex
06_09 - Validate Custom Fields input - Select Example
HTML option selected Attribute
Function Reference/selected « WordPress Codex
06_10 - Display Post Meta on single-book template
Basic CSS for Single Post Type Layout
06_11 - Display Post Meta on archive-book template
06_12 - Tweeks to Custom Fields Metabox Code
PHP array_key_exists() Function
PHP: array_key_exists - Manual
06_13 - Adding Fontawesome icons to custom fields
06_14 - Speed Setup with Helper frameworks
wpmetabox/meta-box: The best plugin for WordPress custom fields and custom meta boxes
AdvancedCustomFields/acf: Advanced Custom Fields
Top Frameworks for WordPress Plugin & Theme Developers – IncludeWP
odin/class-metabox.php at master · wpbrasil/odin
now-hiring/class-now-hiring-admin-metaboxes.php at master · slushman/now-hiring
07 - Plugin Options Settings Page
07_01 - Plugin Options Settings Page
07_02 - Top level admin menu
Plugin API/Action Reference/admin menu « WordPress Codex
admin_menu | Hook | WordPress Developer Resources
add_menu_page() | Function | WordPress Developer Resources
07_03 - Sub menu item for plugin
Administration Menus « WordPress Codex
Function Reference/add options page « WordPress Codex
Function Reference/add plugins page « WordPress Codex
add_submenu_page() | Function | WordPress Developer Resources
07_04 - Settings Page using Form POST method
add_option() | Function | WordPress Developer Resources
Function Reference/update option « WordPress Codex
Settings API « WordPress Codex
07_05 - Settings API - Display Sections and Security fields
Function Reference/do settings sections « WordPress Codex
Function Reference/settings fields « WordPress Codex
07_06 - Settings API - Add Sections
Function Reference/add settings section « WordPress Codex
07_07 - Settings API - Add Settings Fields
Function Reference/add settings field « WordPress Codex
07_08 - Settings API - Save Settings
register_setting() | Function | WordPress Developer Resources
07_12 - Using Settings Options to modify frontend
Function Reference/sanitize html class « WordPress Codex
07_13 - Plugin Action Links
Plugin API/Filter Reference/plugin action links (plugin file name) « WordPress Codex
07_14 - Overview of Helper Classes and Frameworks
CMB2-Snippet-Library/options-and-settings-pages at master · CMB2/CMB2-Snippet-Library
Freemius - The new standard in selling WordPress plugins and themes
boospot/boo-settings-helper: This is a helper class for WordPress Settings API
08 - Global Shared Class
09 - Shortcodes
09_02 - Understanding add_shortcode function
Shortcode API « WordPress
Codex
Function Reference/add shortcode « WordPress
Codex
09_04 - Shortcode for Custom Post Type Loop
Class Reference/WP Query « WordPress Codex
Function Reference/wp reset postdata « WordPress Codex
09_05 - Configuring Default Values for Attributes
Function Reference/shortcode atts « WordPress Codex
get_option() | Function | WordPress Developer Resources
09_09 - Best Practices for Enqueuing CSS and JS for Shortcodes
Function Reference/wp register style « WordPress Codex
wp_enqueue_style() | Function | WordPress Developer Resources
Function Reference/wp add inline style « WordPress Codex
wp_add_inline_script() | Function | WordPress Developer Resources
09_10 - Code optimization for Enqueuing CSS and JS
wp_enqueue_scripts() | Function | WordPress Developer Resources
wp_register_script() | Function | WordPress Developer Resources
09_12 - Solution to Show CPTs for only specific Taxonomies
Class Reference/WP Query « WordPress
Codex
10 - Widgets
10_02 - Creating Dedicated Widgets Control Class
Function Reference/register widget « WordPress Codex
10_05 - Widgets API - using form method to add fields
esc_attr() | Function | WordPress Developer Resources
10_07 - Widgets API - using widget method to Display CPT loop
10_08 - Widgets API - Enqueuing Widget Specific Style and Scripts
Function Reference/is active widget « WordPress Codex
10_09 - Widgets API - Adding more field types and updating widget output
10_10 - Widgets Helper Class Part 1 - Registering Widget
boospot/boo-widget-helper: Helper class for creating widgets
11 - Plugin Finalization
11_02 - Plugin Security and Best Practices
Writing a Plugin « WordPress Codex
Best Practices | Plugin Developer Handbook | WordPress Developer Resources
Plugin Security | Plugin Developer Handbook | WordPress Developer Resources
11_03 - Best Practices : Avoind Naming Collisions
Best Practices | Plugin Developer Handbook | WordPress Developer Resources
11_04 - POT File Generation for plugin Translation
Loco Translate – WordPress plugin | WordPress.org
The fastest and most convenient way to translate interfaces — Poedit
__() | Function | WordPress Developer Resources
11_05 - Using custom apply _filter to allow overrides and additions
apply_filters() | Function | WordPress Developer Resources
apply_filters and add_filter example
11_06 - Using custom do_action to make plugin extendible
do_action() | Function | WordPress Developer Resources
boo-recipes/recipe-layout-style1.php at master · boospot/boo-recipes
boo-recipes/class-boorecipe.php at master · boospot/boo-recipes
do_action and add_action example
11_07 - Cleaning up at Uninstall
unregister_taxonomy() | Function | WordPress Developer Resources
Uninstall Methods | Plugin Developer Handbook | WordPress Developer Resources
boo-recipes/uninstall.php at master · boospot/boo-recipes
11_08 - Submitting plugins to Wordpress repo
Plugin Developer FAQ | Plugin Developer Handbook | WordPress Developer Resources
Detailed Plugin Guidelines | Plugin Developer Handbook | WordPress Developer Resources
Readme Validator | WordPress.org