Professional WordPress: Design and Development

Overview

Professional WordPress: Design and Development, Second Edition will be revised for the latest version of this content management system, 3.5. More real-world examples for load balancing and multiusers. Some basic content such as the functional overview has been replaced with more advanced content since this is a book for developers. The section on WordPress taxonomy has been reworked to fit in with a new chapter. The new multi-purpose plugin, WordPress JetPack from Automattic (the creators of WordPress) has been ...
See more details below
Paperback
$30.14
BN.com price
(Save 33%)$44.99 List Price

Pick Up In Store

Reserve and pick up in 60 minutes at your local store

Other sellers (Paperback)
  • All (17) from $23.18   
  • New (12) from $23.16   
  • Used (5) from $23.47   

Overview

Professional WordPress: Design and Development, Second Edition will be revised for the latest version of this content management system, 3.5. More real-world examples for load balancing and multiusers. Some basic content such as the functional overview has been replaced with more advanced content since this is a book for developers. The section on WordPress taxonomy has been reworked to fit in with a new chapter. The new multi-purpose plugin, WordPress JetPack from Automattic (the creators of WordPress) has been added as well as coverage of HTML5, CSS3, and JavaScript in the standards section. New chapters on Working with WordPress Locally and Custom Post Types, Custom Taxonomies, and MetaData and extensions of Themes to Project Themes and Child Themes bring the content of this book completely up-to-date and will provide developers all they need to deploy successful WordPress sites. The first edition of this book was praised for its hands on examples, and real world tips, and these will remain key features of this second edition. Code downloads and code samples will be readily available from the book's wrox.com web site.
Read More Show Less

Product Details

  • ISBN-13: 9781118442272
  • Publisher: Wiley
  • Publication date: 1/9/2013
  • Edition number: 2
  • Pages: 456
  • Sales rank: 178,601
  • Product dimensions: 7.20 (w) x 9.20 (h) x 1.10 (d)

Meet the Author

Brad Williams is the co-founder of WebDevStudios.com, organizes and speaks at WordPress events, and is the coauthor of Professional WordPress Plugin Development.

David Damstra is the Vice President of Professional Services for CU*Answers, where his team of developers empowers clients with WordPress.

Hal Stern is a VP at Juniper Networks and is the coauthor of Blueprints for High Availability.

Wrox Professional guides are written by working developers to address everyday needs. 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

INTRODUCTION xxi

CHAPTER 1: FIRST POST 1

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

CHAPTER 2: CODE OVERVIEW 21

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

CHAPTER 3: WORKING WITH WORDPRESS LOCALLY 41

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

CHAPTER 4: TOUR OF THE CORE 57

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

CHAPTER 5: THE LOOP 73

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

CHAPTER 6: DATA MANAGEMENT 101

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

CHAPTER 7: CUSTOM POST TYPES, CUSTOM TAXONOMIES, AND METADATA 115

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

CHAPTER 8: PLUGIN DEVELOPMENT 139

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

CHAPTER 9: THEME DEVELOPMENT 211

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

CHAPTER 10: MULTISITE 259

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

CHAPTER 11: CONTENT AGGREGATION 289

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

CHAPTER 12: CRAFTING A USER EXPERIENCE 309

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

CHAPTER 13: STATISTICS, SCALABILITY, SECURITY, AND SPAM 337

Statistics Counters 337

AWStats 338

Google Analytics 340

JetPack by WordPress.com 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

CHAPTER 14: WORDPRESS AS A CONTENT MANAGEMENT SYSTEM 365

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

CHAPTER 15: WORDPRESS IN THE ENTERPRISE 383

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

CHAPTER 16: WORDPRESS DEVELOPER COMMUNITY 397

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 WordPress.org 408

WordPress Podcasts 408

WordPress News Sites 409

Summary 410

INDEX 411

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star

(0)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com 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 & Noble.com 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 & Noble.com 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 BN.com 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

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com 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 BN.com. 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

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