SitePoint
  • Premium
  • Library
  • Community
  • Jobs
  • Blog
LoginStart Free Trial
Professional WordPress Plugin Development, 2nd Edition
Professional WordPress® Plugin Development
FOREWORD
INTRODUCTION
WHO THIS BOOK IS FOR
WHAT YOU NEED TO USE THIS BOOK
WHAT THIS BOOK COVERS
HOW THIS BOOK IS STRUCTURED
CONVENTIONS
SOURCE CODE
ERRATA
WHAT IS A PLUGIN?
AVAILABLE PLUGINS
ADVANTAGES OF PLUGINS
INSTALLING AND MANAGING PLUGINS
SUMMARY
REQUIREMENTS FOR PLUGINS
BEST PRACTICES
PLUGIN HEADER
DETERMINING PATHS
ACTIVATE/DEACTIVATE FUNCTIONS
UNINSTALL METHODS
CODING STANDARDS
SUMMARY
ADDING MENUS AND SUBMENUS
PLUGIN SETTINGS
THE OPTIONS API
THE SETTINGS API
KEEPING IT CONSISTENT
SUMMARY
SECURITY OVERVIEW
USER PERMISSIONS
NONCES
DATA VALIDATION AND SANITIZATION
FORMATTING SQL STATEMENTS
SECURITY GOOD HABITS
PERFORMANCE OVERVIEW
CACHING
TRANSIENTS
SUMMARY
UNDERSTANDING HOOKS
ACTIONS
FILTERS
USING HOOKS FROM WITHIN A CLASS
USING HOOKS WITH ANONYMOUS FUNCTIONS
CREATING CUSTOM HOOKS
FINDING HOOKS
SUMMARY
REGISTERING SCRIPTS
ENQUEUEING SCRIPTS
LIMITING SCOPE
LOCALIZING SCRIPTS
INLINE SCRIPTS
OVERVIEW OF BUNDLED SCRIPTS
POLYFILLS
YOUR CUSTOM SCRIPTS
jQuery
BACKBONE/UNDERSCORE
REACT
SUMMARY
WHAT IS GUTENBERG?
GUTENBERG LINKS
TOURING GUTENBERG
GLOSSARY
PRACTICAL EXAMPLES
TECHNOLOGY STACK OF GUTENBERG
“HELLO WORLD!” BLOCK
WP‐CLI SCAFFOLDING
CREATE‐GUTEN‐BLOCK TOOLKIT
BLOCK DIRECTORY
SUMMARY
CREATING CUSTOM POST TYPES
POST METADATA
META BOXES
CREATING CUSTOM TAXONOMIES
USING CUSTOM TAXONOMIES
A POST TYPE, POST METADATA, AND TAXONOMY PLUGIN
SUMMARY
WORKING WITH USERS
ROLES AND CAPABILITIES
LIMITING ACCESS
CUSTOMIZING ROLES
SUMMARY
WHAT IS CRON?
SCHEDULING CRON EVENTS
TRUE CRON
PRACTICAL USE
SUMMARY
INTERNATIONALIZATION AND LOCALIZATION
CREATING TRANSLATION FILES
SUMMARY
WHAT THE REST API IS
WHAT YOU CAN DO WITH THE REST API
ACCESSING THE WORDPRESS REST API
THE HTTP API
WORDPRESS’ HTTP FUNCTIONS
BRINGING IT ALL TOGETHER
SUMMARY
TERMINOLOGY
ADVANTAGES OF MULTISITE
ENABLING MULTISITE IN WORDPRESS
MULTISITE FUNCTIONS
DATABASE SCHEMA
QUERY CLASSES
OBJECT CLASSES
SUMMARY
QUERYING AND DISPLAYING POSTS
SHORTCODES
WIDGETS
DASHBOARD WIDGETS
REWRITE RULES
THE HEARTBEAT API
SUMMARY
COMPATIBILITY
DEBUGGING
ERROR LOGGING
QUERY MONITOR
SUMMARY
PLUGIN DEVELOPER HANDBOOK
CODEX
TOOL WEBSITES
COMMUNITY RESOURCES
TOOLS
SUMMARY
ABOUT THE AUTHORS
ACKNOWLEDGMENTS
WILEY END USER LICENSE AGREEMENT

Community Questions