Professional WordPress: Design and Development

( 1 )


The highest rated WordPress development and design book on the market is back with an all new third edition.

Professional WordPress is the only WordPress book targeted to developers, with advanced content that exploits the full functionality of the most popular CMS in the world. Fully updated to align with WordPress 4.1, this edition has updated examples with all new screenshots, and full exploration of additional tasks made possible by the latest tools and features. You will ...

See more details below
$32.64 price
(Save 34%)$50.00 List Price

Pick Up In Store

Reserve and pick up in 60 minutes at your local store

Other sellers (Paperback)
  • All (5) from $26.60   
  • New (3) from $29.15   
  • Used (2) from $26.60   
Professional WordPress: Design and Development

Available on NOOK devices and apps  
  • NOOK Devices
  • Samsung Galaxy Tab 4 NOOK 7.0
  • Samsung Galaxy Tab 4 NOOK 10.1
  • NOOK HD Tablet
  • NOOK HD+ Tablet
  • NOOK eReaders
  • NOOK Color
  • NOOK Tablet
  • Tablet/Phone
  • NOOK for Windows 8 Tablet
  • NOOK for iOS
  • NOOK for Android
  • NOOK Kids for iPad
  • PC/Mac
  • NOOK for Windows 8
  • NOOK for PC
  • NOOK for Mac
  • NOOK for Web

Want a NOOK? Explore Now

NOOK Book (eBook)
$28.99 price
(Save 42%)$50.00 List Price


The highest rated WordPress development and design book on the market is back with an all new third edition.

Professional WordPress is the only WordPress book targeted to developers, with advanced content that exploits the full functionality of the most popular CMS in the world. Fully updated to align with WordPress 4.1, this edition has updated examples with all new screenshots, and full exploration of additional tasks made possible by the latest tools and features. You will gain insight into real projects that currently use WordPress as an application framework, as well as the basic usage and functionality of the system from a developer's perspective. The book's key features include detailed information and real-world examples that illustrate the concepts and techniques at work, plus code downloads and examples accessible through the companion website. Written by practicing WordPress developers, the content of this edition focuses on real world application of WordPress concepts that extend beyond the current WordPress version.

WordPress started in 2003 with a single bit of code to enhance the typography of everyday writing, and has grown to be the largest self-hosted website platform in the world. This book helps you use WordPress efficiently, effectively, and professionally, with new ideas and expert perspectives on full system exploitation.

  • Get up to speed on the new features in WordPress 4.1
  • Learn cutting edge uses of WordPress, including real-world projects
  • Discover how to migrate existing websites to WordPress
  • Understand current best practices and tools in WordPress development

WordPress was born out of a desire for an elegant, well-architected personal publishing system built on PHP and MySQL, and has evolved to be used as a full content management system through thousands of plugins, widgets, and themes. Professional WordPress is the essential developer's guide to this multifunctional system.

Read More Show Less

Product Details

  • ISBN-13: 9781118987247
  • Publisher: Wiley
  • Publication date: 1/12/2015
  • Edition number: 3
  • Pages: 504
  • Sales rank: 185,967
  • Product dimensions: 7.30 (w) x 9.20 (h) x 1.00 (d)

Meet the Author

Brad Williams is the cofounder of and, a cohost of the DradCast WordPress podcast, and the coauthor of Professional WordPress Plugin Development.

David Damstra is Vice President of Marketing Services and Creative Director for CU*Answers where his team of developers empowers clients with WordPress.

Hal Stern is an IT executive with a major healthcare company. He is coauthor of Blueprints for High Availability, also from Wiley.

Wrox Professional guides are planned and written by working programmers to meet the real-world needs of programmers, developers, and IT professionals. Focused and relevant, they address the issues technology professionals face every day. They provide examples, practical solutions, and expert education in new technologies, all designed to help programmers do a better job.

Read More Show Less

Table of Contents



What Is WordPress? 1

Popularity of WordPress 3

Current State 3

Intersecting the Community 4

WordPress and the GPL 5

Content and Conversation 6

WordPress as a Content Management System 6

Creating Conversation 7

Getting Started 8

Hosting Options 8

Do It Yourself Installation 10

Finishing Up 17

First-Time Administration 17

First Post 19

Summary 20


Downloading 21

Download Locations 21

Available Formats 22

Release Archive 22

Directory and File Structure 23

WordPress Configuration 24

wp-config.php File 24

Advanced wp-config Options 26

.htaccess 31

The .maintenance File 35

wp-content User Playground 36

Plugins 36

Themes 37

Uploads and Media Directory 37

Upgrade Directory 38

Custom Directories 38

Summary 39


Benefits of Working Locally 41

Typical Deployment Cycle 42

Why So Much Process? 42

Tools for Component Administration 43

Getting Your Development Stack 44

Adding WordPress to the Local Install 45

Configuration Details 46

Managing the Web Server Document Tree 46

Enabling Debug Information 48

Handling Local and Production Database 50

Creating Virtual Local Server Names 50

Local Theme and Plugin Development 53

Deploying Local Changes 53

Summary 55


What’s in the Core? 57

Using the Core as a Reference 58

Inline Documentation 59

Finding Functions 60

Exploring the Core 62

Deprecated Functions 65

WordPress Codex and Resources 66

What Is the Codex? 66

Using the Codex 66

Function Reference 67

WordPress APIs 69

Codex Controversy 71

Don’t Hack the Core! 71

Why Not? 71

Alternatives to Hacking the Core 72

Summary 72


Understanding the Loop 74

From Query Parameters to SQL 75

Understanding Content in WordPress 76

Putting the Loop in Context 76

Flow of the Loop 77

Template Tags 79

Commonly Used Template Tags 80

Tag Parameters 81

Customizing the Loop 81

Using the WP_Query Object 82

Building a Custom Query 83

Adding Paging to a Loop 85

Using query_posts( ) 86

Using get_posts( ) 87

Resetting a Query 88

More Than One Loop 90

Advanced Queries 91

Global Variables 93

Post Data 93

Author Data 94

User Data 95

Environmental Data 95

Global Variables or Template Tags? 96

Working Outside the Loop 97

Summary 100


Database Schema 101

Table Details 103

WordPress Content Tables 104

WordPress Taxonomy Tables 105

WordPress Database Class 106

Simple Database Queries 106

Complex Database Operations 108

Dealing with Errors 110

Direct Database Manipulation 111

Summary 114


Understanding Data in WordPress 115

What Is a Custom Post Type? 116

Register Custom Post Types 116

Setting Post Type Labels 121

Working with Custom Post Types 122

Custom Post Type Template Files 123

Special Post Type Functions 124

WordPress Taxonomy 126

Default Taxonomies 126

Taxonomy Table Structure 126

Understanding Taxonomy Relationships 127

Building Your Own Taxonomies 128

Custom Taxonomy Overview 128

Creating Custom Taxonomies 128

Setting Custom Taxonomy Labels 131

Using Your Custom Taxonomy 132

Metadata 133

What Is Metadata? 134

Adding Metadata 134

Updating Metadata 135

Deleting Metadata 135

Retrieving Metadata 136

Summary 137


Plugin Packaging 140

Creating a Plugin File 140

Creating the Plugin Header 140

Plugin License 141

Activating and Deactivating Functions 142

Internationalization 143

Determining Paths 145

Plugin Security 147

Nonces 147

Data Validation and Sanitization 148

Know Your Hooks: Actions and Filters 151

Actions and Filters 151

Popular Filter Hooks 153

Popular Action Hooks 154

Plugin Settings 156

Saving Plugin Options 156

Array of Options 157

Creating a Menu and Submenus 158

Creating an Options Page 160

WordPress Integration 169

Creating a Meta Box 169

Shortcodes 174

Creating a Widget 175

Creating a Dashboard Widget 179

Creating Custom Tables 180

Uninstalling Your Plugin 182

Creating a Plugin Example 184

Publishing to the Plugin Directory 203

Restrictions 204

Submitting Your Plugin 204

Creating a readme.txt File 204

Setting Up SVN 208

Publishing to the Plugin Directory 209

Releasing a New Version 210

Summary 210


Why Use a Theme? 211

Installing a Theme 212

FTP Installation 212

Theme Installer 213

What Is a Theme? 213

Template Files 214

CSS 214

Images and Assets 214

Plugins 215

Creating Your Own Theme 215

Project Themes vs. Child Themes 215

What to Look for in a Starter Theme 216

Creating Your Own Theme: Getting Started 217

Essential File: Style.css 217

Showing Your Content: Index.php 218

Showing Your Content in Diff erent Ways: Index.php 220

Creating Your Own Theme: DRY 220

Header.php 221

Footer.php 222

Sidebar.php 222

Deviations from the Norm: Conditional Tags 223

Creating Your Own Theme: Content Display 224

Customizing Your Homepage: Front-Page.php 225

Show Your Older Posts by Date: Archive.php 227

Showing Only One Category: Category.php 228

Show Posts of a Specific Tag: Tag.php 230

Other Archival Templates 231

How to Show a Single Post: Single.php 231

Display a Page: Page.php 232

Display Post Attachments: Attachment.php 233

Template Hierarchy 233

Creating Your Own Theme: Additional Files 235

Handle 404 Errors: 404.php 235

Author.php 236

Comments.php 237

Adding Functionality to Your Templates: Functions.php 238

Search.php 240

SearchForm.php 242

Other Files 242

Custom Page Templates 243

When to Use Custom Page Templates 243

How to Use Custom Page Templates 244

Stock Twenty Eleven Page Templates 245

Other Theme Enhancements 246

Menu Management 246

Widget Areas 248

Post Formats 249

Theme Settings 250

Theme Customizer 251

Theme Hierarchy and Child Themes 251

Premium Themes and Other Theme Frameworks 256

Bones Theme 256

Carrington Theme 257

Genesis Theme 257

Hybrid Core Theme 257

Roots 257

StartBox Theme 258

Thematic Theme 258

Summary 258


What Is Multisite? 259

Multisite Terminology 260

Differences 260

Advantages of Multisite 261

Enabling Multisite 261

Working in a Network 262

Network Admin 263

Creating and Managing Sites 263

Working with Users and Roles 264

Themes and Plugins 264

Settings 265

Domain Mapping 265

Coding for Multisite 265

Blog ID 265

Common Functions 266

Creating a New Site 270

Network Admin Menus 274

Multisite Options 276

Users in a Network 282

Super Admins 285

Network Stats 286

Multisite Database Schema 287

Multisite-Specific Tables 287

Site-Specific Tables 287

Summary 288


Getting Noticed 290

Social Media Buttons 291

Feeding WordPress Upstream 292

Buttons, Badges, or Both? 292

Simple Social Networking Badges 293

Collecting External Content 294

Integrating a YouTube Video 295

Integrating Twitter 296

Google Maps 298

Integrating Facebook 299

Generic XML Data 299

Transients 301

Advertising 303

Monetizing Your Site 303

Setting Up Advertising 304

Privacy and History 307

Summary 308


User Experience Principles 309

Consistent Navigation 310

Visual Design Elements 312

Making Content Easy to Find 314

Site Load Times 314

Using JavaScript 316

Usability and Usability Testing 316

Structuring Your Information 318

Getting Your Site Found 320

Duplicate Content 321

Trackbacks and Pings 323

Tags and Content Sharing Sites 324

How Web Standards Get Your Data Discovered 324

Semantic HTML 324

Valid HTML 326

Microformats 327

HTML5 329

CSS3 330

Searching Your Own Site 331

Weaknesses of the Default Search 331

Alternatives and Plugins to Help 332

Mobile Access and Responsive Web Design 334

Leave It Alone 334

Lightweight Mobile 335

Responsive Design 335

Summary 336


Statistics Counters 337

AWStats 338

Google Analytics 340

JetPack by 342

Cache Management 343

WordPress System Complexity 344

Web Server Caching and Optimization 345

WordPress Object Caching 347

Transient Caches 347

MySQL Query Cache 348

Load Balancing Your WordPress Site 349

Dealing with Spam 350

Comment Moderation and CAPTCHAs 350

Automating Spam Detection 351

Securing Your WordPress Site 352

Staying Up-to-Date 352

Hiding WordPress Version Information 353

Limit Login Attempts 354

Using Good Passwords 354

Changing Your Table Prefi x 354

Moving Your Confi guration File 354

Moving Your Content Directory 355

Using the Secret Key Feature 355

Forcing SSL on Login and Admin 356

Apache Permissions 356

MySQL Credentials 357

Recommended Security Plugins 357

Using WordPress Roles 360

Subscriber Role 361

Contributor Role 361

Author Role 361

Editor Role 361

Administrator Role 362

Super Admin Role 362

Role Overview 362

Extending Roles 363

Summary 364


Defining Content Management 365

Workflow and Delegation 367

User Roles and Delegation 367

Workfl ow 368

Content Organization 370

Theme and Widget Support 370

Homepages 372

Featured Content Pages 373

Content Hierarchy 376

Interactivity Features 379

Forums 379

Forms 379

E-Commerce 380

Other Content Management Systems 380

WordPress Integration 381

Where Not to Use WordPress 381

Summary 382


Is WordPress Right for Your Enterprise? 383

When WordPress Isn’t Right for You 385

Scalability 386

Performance Tuning 386

Caching 388

Regular Maintenance 388

Hardware Scaling 389

Integration with Enterprise Identity Management 391

LDAP and Active Directory 391

OpenID and OAuth 392

Content Integration via Feeds 393

Summary 395


Contributing to WordPress 397

Understanding Trac 398

Working on the Core 401

Submitting Plugins and Themes 402

Documentation 402

Sister Projects 403

BuddyPress 403

bbPress 403

Future Projects 403

Resources 404

Codex 404

Support Forums 404

WordPress Chat 405

Mailing Lists 405

External Resources 406

WordCamp and Meetups 407

WordPress.TV 407

Theme/Plugin Directories 407

WordPress Ideas 407

WordPress Development Updates 408

Make 408

WordPress Podcasts 408

WordPress News Sites 409

Summary 410


Read More Show Less

Customer Reviews

Average Rating 5
( 1 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Terms of Use.
  • - Barnes & reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing 1 Customer Reviews
  • Anonymous

    Posted September 14, 2014

    No text was provided for this review.

Sort by: Showing 1 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)