售 价:¥
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
WordPress Web Application Development Second Edition
Table of Contents
WordPress Web Application Development Second Edition
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why subscribe?
Free access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Downloading the color images of this book
Errata
Piracy
Questions
1. WordPress as a Web Application Framework
WordPress as a CMS
WordPress as a web application framework
The MVC versus event-driven architecture
Simplifying development with built-in features
User management
Media management
Template management
Database management
Routing
XMR-RPC API
Caching
Scheduling
Plugins and widgets
Themes
Actions and filters
The admin dashboard
Identifying the components of WordPress
The role of WordPress themes
Structure of a WordPress page layout
Customizing the application layout
The role of the admin dashboard
The admin dashboard
Posts and pages
Users
Appearance
Settings
The role of plugins
The role of widgets
A development plan for the portfolio management application
Application goals and target audience
Planning the application
User roles of the application
Planning application features and functions
Understanding limitations and sticking to guidelines
Building a question-answer interface
Prerequisites for building a question-answer interface
Creating questions
Customizing the comments template
Changing the status of answers
Saving the status of answers
Generating a question list
Enhancing features of the questions plugin
Customizing the design of questions
Categorizing questions
Approving and rejecting questions
Adding star rating to answers
Summary
2. Implementing Membership Roles, Permissions, and Features
Introduction to user management
Preparing the plugin
Getting started with user roles
Creating application user roles
The best action for adding user roles
Knowing the default roles of WordPress
Choosing among default and custom roles
Scenario 1
Scenario 2
Removing existing user roles
Understanding user capabilities
Creating your first capability
Understanding default capabilities
Registering application users
Implementing frontend registration
Shortcode implementation
Pros and cons of using shortcodes
Page template implementation
Pros and cons of page templates
Custom template implementation
Building a simple router for a user module
Creating the routing rules
Adding query variables
Flushing the rewriting rules
Controlling access to your functions
The advantages of using the do_action function
Creating custom templates
Designing the registration form
Planning the registration process
Handling registration form submission
Exploring the registration success path
Automatically log in the user after registration
Activating system users
Creating a login form in the frontend
Displaying the login form
Checking whether we implemented the process properly
Time to practice
Summary
3. Planning and Customizing the Core Database
Understanding the WordPress database
Exploring the role of existing tables
User-related tables
Post-related tables
Term-related tables
Other tables
Adapting existing tables into web applications
User-related tables
Post-related tables
Scenario 1 – An online shopping cart
Scenario 2 – A hotel reservation system
Scenario 3 – The project management application
Term-related tables
Other tables
Extending the database with custom tables
Planning the portfolio application tables
Types of tables in web applications
Creating custom tables
Querying the database
Querying the existing tables
Inserting records
Updating records
Deleting records
Selecting records
Querying the custom tables
Working with posts
Extending the WP_Query class for applications
Introduction to WordPress query classes
The WP_User_Query class
The WP_Comment_Query class
Other query classes
Limitations and considerations
Transaction support
Post revisions
How to know whether to enable or disable revisions?
Auto saving
Using meta tables
Summary
4. Building Blocks of Web Applications
Introduction to custom content types
The role of custom post types in web applications
Planning custom post types for application
Projects
Services
Articles
Books
Implementing custom post types for a portfolio application
Implementing the custom post type settings
Creating the project class
Assigning permissions to projects
Creating custom taxonomies for technologies and project types
Assigning permissions to the project type
Introduction to custom fields with meta boxes
What is a template engine?
Building a simple custom template loader
Creating your first template
Comparing the template loader and template engine
Persisting custom field data
Customizing custom post type messages
Introducing custom post type relationships
Pods framework for custom content types
Should you choose Pods for web development?
Time to practice
Summary
5. Developing Pluggable Modules
A brief introduction to WordPress plugins
Understanding the WordPress plugin architecture
WordPress plugins for web development
Creating reusable libraries with plugins
Planning the template loader plugin
Using the template loader plugin
Handling plugin dependencies
Extensible plugins
Extend plugins with WordPress core actions and filters
Planning a file uploader for portfolio application
Creating the extensible file uploader plugin
Converting file fields with jQuery
Integrating the media uploader to buttons
Extending the file uploader plugin
Customize the allowed types of images
Saving and loading project screens
Extend plugins with custom actions and filters
Pluggable plugins
Tips for using pluggable functions
Time to practice
Summary
6. Customizing the Dashboard for Powerful Backends
Understanding the admin dashboard
Customizing the admin toolbar
Removing the admin toolbar
Managing the admin toolbar items
Customizing the main navigation menu
Creating new menu items
Adding features with custom pages
Building options pages
Creating a custom layout for options pages
Building an application options panel
Using the WordPress options API
Using feature-packed admin list tables
Working with default admin list tables
The post list
Creating custom actions for custom posts
Creating custom filters for custom post types
Creating custom post status links
Displaying custom list columns
The user list
The comments list
Building extended lists
Using the admin list table for the following developers
Step 1 – defining the custom class
Step 2 – defining the instance variables
Step 3 – creating the initial configurations
Step 4 – implementing the custom column handlers
Step 5 – implementing the column default handlers
Step 6 – displaying the checkbox for records
Step 7 – listing the available custom columns
Step 8 – defining the sortable columns of list
Step 9 – creating a list of bulk actions
Step 10 – retrieving list data
Step 11 – adding a custom list as a menu page
Step 12 – displaying the generated list
An awesome visual presentation for admin screens
Using existing themes
Using plugin-based third-party admin themes
Creating your own admin theme
The responsive nature of the admin dashboard
Time for action
Summary
7. Adjusting Theme for Amazing Frontends
An introduction to the WordPress application frontend
A basic file structure of the WordPress theme
Understanding the template execution hierarchy
The template execution process of web application frameworks
Web application layout creation techniques
Shortcodes and page templates
Custom templates with custom routing
Using pure PHP templates
The WordPress way of using templates
Direct template inclusion
Theme versus plugin-based templates
Are you planning to create an application-specific theme?
Building the portfolio application home page
What is a widget?
Widgetizing application layouts
Creating widgets
Designing a home page template
Generating the application frontend menu
Creating a navigation menu
Displaying user-specific menus on the frontend
Managing options and widgets with customizer
Adding custom options to the theme customizer
Handling widgets in the theme customizer
Creating pluggable templates
Pluggable templates in WordPress
Extending the home page template with action hooks
Customize widgets to enable extendable locations
Planning action hooks for layouts
Time for action
Summary
8. Enhancing the Power of Open Source Libraries and Plugins
Why choose open source libraries?
Open source libraries inside the WordPress core
Open source JavaScript libraries in the WordPress core
What is Backbone.js?
Understanding the importance of code structuring
Integrating Backbone.js and Underscore.js
Creating a developer profile page with Backbone.js
Structuring with Backbone.js and Underscore.js
Displaying the projects list on page load
Creating new projects from the frontend
Integrating events to Backbone.js views
Validating and creating new models for the server
Creating new models in the server
Using PHPMailer for custom e-mail sending
Usage of PHPMailer within the WordPress core
Creating a custom version of a pluggable wp_mail function
Loading PHPMailer inside plugins and creating custom functions
Implementing user authentication with OpenAuth
Configuring login strategies
Implementing LinkedIn account authentication
Verifying LinkedIn account and generating response
Building a LinkedIn app
The process of requesting the strategies
Initializing the library
Authenticating users to our application
Using third- party libraries and plugins
Time for action
Summary
9. Listening to Third-party Applications
Introduction to APIs
The advantages of having an API
The WordPress XML-RPC API for web applications
Building the API client
Creating a custom API
Integrating API user authentication
Integrating API access tokens
Providing the API documentation
Time for action
Summary
10. Integrating and Finalizing the Portfolio Management Application
Integrating and structuring the portfolio application
Adding the template loader dependencies
Interating the template loader into a user manager
Working with a restructured application
Building the developer model
Designing the developer list template
Enabling AJAX-based filtering
Updating a user profile with additional fields
Updating the values of the profile fields
Scheduling subscriber notifications
Notifying subscribers through e-mails
Time for action
Final thoughts
Summary
11. Supplementary Modules for Web Development
Internationalization
Introduction to WordPress translation support
The translation functions in WordPress
Creating plugin translations
Creating the POT file using PoEdit
Loading language files
Changing the WordPress language
Working with media grid and image editor
Introduction to the post editor
Using the WordPress editor
Video embedding
Lesser-known WordPress features
Caching
Transients
Testing
Security
Introduction to multisite
Time for action
Summary
A. Configurations, Tools, and Resources
Configure and set up WordPress
Step 1 – downloading WordPress
Step 2 – creating the application folder
Step 3 – configuring the application URL
Creating a virtual host
Using a localhost
Step 4 – installing WordPress
Step 5 – setting up permalinks
Step 6 – downloading the Responsive theme
Step 7 – activating the Responsive theme
Step 8 – activating the plugin
Step 9 – using the application
Open source libraries and plugins
Online resources and tutorials
Index
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜