- PA R T I: GETTING STARTED WITH WORDPRESS
- Chapter 1: T e Anatomy of a WordPress Install
- The Basic Install
- The Guided Installation Method
- The Manual Installation Method
- Using an External Database Server
- Other Database Settings
- Useful wp-config.php Features
- A Few Words on Installers
- Moving the WordPress Install to a Different Directory
- Hacking the Database
- Learning Where Everything Is
- Fixing Issues by Hacking the Database
- Backing Up
- Switching Hosts
- Using the Export and Import tools
- When Export/Import Won’t Work
- How to Make Your WordPress Install More Secure
- Users and Passwords
- Server-Side Security Steps
- Looking Ahead
- The Basic Install
- Chapter 2: T e WordPress Syntax
- WordPress and PHP
- The WordPress Codex
- The WordPress Core
- Themes and Template Files
- Using the Template Tags
- The Include Tags
- Passing Multiple Parameters to a Template Tag
- Function and Query-String Style Arguments
- Understanding Data Types
- Conditional Tags
- Why Is this Great?
- Next Up: The Loop
- Chapter 3: Te Loop viii CONTENTS
- Understanding the WordPress Loop
- The Basic Loop
- Separating the Loop Using the Template Parts
- A Few Words About wp_query
- Using the Loop
- Using Sticky Posts
- Working with Post Formats
- The get_template_part() and Post Formats
- Modifying the Query with pre_get_posts
- Alternatives to the Loop
- Multiple Loops
- Featured Posts with Multiple Loops
- Three’s a Charm, but Four Loops Are Way Cooler
- Getting More Comfortable with the Loop
- Understanding the WordPress Loop
- WORDPRESS THEMES PA R T II: DESIGNING AND DEVELOPING
- Chapter 4: WordPress Teme Essentials
- Theme Basics
- Elements of the Basic Theme
- This Is What You’re Doing
- A Few Words on HTML5
- Creating the Template Files
- The Theme Declaration in style.css
- Up Top, the header.php File
- The Footer, with footer.php
- The Right Column: sidebar.php
- The Content Flow, Using index.php
- Breaking Out the Loop
- Single Posts and Pages
- Archive Templates
- 404, Search, and Screenshots
- Features with functions.php
- Understanding Template Files
- Which Template File Is Used When?
- The Template Hierarchy
- Page Templates
- Using functions.php
- Setting the Default Width
- Inserting Promotions with functions.php
- Understanding Widgets and When to Use Them
- Declaring Widget Areas
- Using Multiple Widget Areas
- Customizing Widgets
- Making Comments Look Good CONTENTS ix
- Threaded Comments
- Author Highlighting
- Adding Custom Fields
- Common Usage
- The Usability Factor
- Developing a Starter Theme
- Releasing a Theme
- Theme Checklists
- Commercial Themes and the GPL License
- Submitting to WordPress.org
- Moving Onward with Themes
- Theme Basics
- Chapter 5: T e Child Teme Concept
- The Brilliance of Child Themes
- How Child Themes Work
- The Beauty of Template File Overriding
- The Wonderful Template Parts
- Event Child Themes
- Child Themes and Internationalization
- The Flip Side of Inheritance
- Common Issues to Keep in Mind
- Managing Several Sites Using Child Themes
- Managing Design for Multiple Sites
- Don’t Forget About functions.php
- There Is Such a Thing As too Much
- What About Theme Frameworks?
- Let’s Talk About Parent Themes Instead
- Taking Themes to the Next Level
- The Brilliance of Child Themes
- Chapter 6: Advanced Teme Usage
- Outlining the Theme
- and Tune with Post Formats Rule #1: Style by Category, Sort by Tag,
- Rule #2: Carefully Consider Custom Fields
- with Custom Post Types Rule #3: Build with Pages and Extend
- Is That All?
- Individual Styling Techniques
- Styling the Posts
- Body Class Styling
- Sticky Posts
- Using Custom Fields
- Custom Field Basics
- Creating Meta Boxes
- Fancy Custom Features
- Properly Adding Functions in functions.php
- Featured Images
- Custom Menus x CONTENTS
- Custom Headers
- Custom Background Images
- The Theme Customizer and Theme Options
- Adding Your Own Theme Settings
- Theme Option Pages
- Theme Customizer or Theme Options?
- Mastering Action Hooks
- Hooking On
- Creating Your Own Action Hooks
- Removing Actions from Hooks
- Using Taxonomies
- Purposes for Custom Taxonomies
- Get Your Mind Working
- Taxonomies and Portability
- The Power of Custom Post Types
- Using Custom Post Types
- Theming Custom Post Types
- Multiple Language Support
- Working with Language Files
- The Naming Issue
- Working with RSS Feeds
- The WordPress Feeds
- Build a Custom Feed Url
- Basic SEO Implementations
- Trimming WordPress on the Theme Side
- Themes Versus Plugins
- Outlining the Theme
- PA R T III: USING PLUGINS WITH WORDPRESS
- Chapter 7: Making the Most of WordPress Plugins
- Plugins Are Great
- About the Feature-As-Plugin Concept
- Different Types of Plugins
- Regular Plugins
- Drop-in Plugins
- Must-Use Plugins
- Getting the Most out of the Plugin Ecosystem
- A Checklist for Choosing a Plugin
- Tweaking Plugins
- Developing Plugins for Networks
- Sitewide WordPress Plugins
- Plugin Basics
- Methods for Incorporating Your Plugins
- Using Hooks
- Creating Your Own Template Tags
- The Pluggable Functions
- Custom Taxonomies and Custom Post Types CONTENTS xi
- Why Use a Plugin?
- Creating a Custom Taxonomy
- Creating a Custom Post Type
- Must-Have Functionality for Plugins
- Plugin Settings
- Database Content and Uninstalling
- After Uninstalling
- Building the AddAff Plugin
- The AddAff Settings Page
- Creating the AddAff Meta Box
- Filtering the_content
- Wrapping It Up
- Adding Widget Support to Plugins
- Creating a Widget
- Dashboard Widgets
- Plugins and the Database
- Backward Compatibility for Plugins
- Check If a Function Exists
- Hosting Your Plugins on WordPress.org
- A Final Word of Warning and Encouragement
- Plugins Are Great
- Chapter 8: Plugins or functions.php?
- When to Use a Plugin
- Extending Functionality with Plugins
- Caution: Plugins Can Slow Down Your Site
- When to Use functions.php
- The Shortcode Dilemma
- Solve It with Child Themes
- The Best of Both Worlds: A Functionality Plugin
- Create Your Own Functionality Plugin
- The Importance of Portability
- Planning for Extended Functionality in Your WordPress Site
- When to Use a Plugin
- PART IV: ADDITIONAL FEATURES AND FUNC TION ALITY
- Chapter 9: Using WordPress As a CMS
- Is WordPress the Right Choice for Your CMS?
- WordPress CMS Checklist
- Trimming WordPress to the Essentials
- Tweaking the Admin Interface
- Don’t Forget the Theme Customizer
- Unblogging WordPress
- The Perfect Setup for a Simple Static Website
- Doing More Than the Basics
- in a WordPress CMS Uses for Custom Post Types and Taxonomies
- Putting Widgets to Good Use in a CMS
- Managing Menus
- Integrating Non-WordPress Content
- Don’t Forget to Include a Manual
- A Final Word on Using WordPress As a CMS
- Chapter 10: Integrating the Social Web
- Integrating Facebook into Your Site
- The Like Button
- Profile Widgets
- Facebook Comments
- Integrating Twitter
- Adding Twitter Buttons and Widgets
- Twitter and Short Urls
- Adding Google+ to Your Site
- Share and Follow on Tumblr
- The Follow Button
- The Share to Tumblr Button
- Pin to Pinterest
- Share to Linkedin
- Cross-Publishing
- Some Cross-Posting Solutions
- Using a Hosted Comment Solution
- Using Unified Logins
- Plugins and Overhead
- The Importance of the Social Web
- Integrating Facebook into Your Site
- Chapter 11: Design Trickery
- Adding More Control over Your Posts
- Tag-Based Design
- Using Custom Fields
- comment_class() Hooking on to body_class(), post_class(), and
- Adding Your Own Taxonomy
- Improving the Menu
- Thinking About Hover-Based Menus
- Placing Ads Within the Loop
- Creating 404s That Help the Visitor
- Using JavaScript Libraries with WordPress
- Registering Scripts
- Making WordPress Your Own
- A Custom Login Form
- Admin Themes
- Making Your Theme Responsive
- Media Queries
- Responsive Design Considerations
- Polishing Your WordPress Site
- Adding More Control over Your Posts
- Chapter 12: Fun with Media CONTENTS xiii
- Working with Image Galleries
- Styling the Gallery
- Better Browsing with Lightbox
- Using Outside Scripts and Systems
- The Media Post Formats
- Embedding Media Content
- Getting the Settings Right
- The Magic of Oembed
- Randomizing Image Elements
- Displaying Random Images from Your Galleries
- More Random Image Options
- Making the Most of Image-Sharing Services
- Posting from Flickr
- Beware of the Clutter
- Chapter 13: Extra Func tion ality
- Tabbed Boxes
- Smart Usage
- To Tab or Not to Tab
- Displaying RSS Feeds
- The Built-in Parser
- Caching with the Transients API
- When to Use the Widget Solution
- Multiple Feeds with SimplePie
- Custom Shortcodes
- Adding Shortcodes
- Shortcode Tidbits
- What About the Visual Editor?
- Sending E-mail with WordPress
- Personalizing the Login Form
- Adding Your Own Login Form
- Print That Blog
- And Even More . . .
- Tabbed Boxes
- Chapter 14: Uncom mon WordPress Usage
- Working with User-Submitted Content
- Receiving Guest Posts
- Handling User News and Reviews
- Rolling a Bootstrapped Job Board
- Using wp_editor()
- A Final Word About User-Submitted Content
- Using WordPress As a FAQ-Like Knowledge Base
- Adding the Functionality
- Including Further Enhancements
- WordPress and eCommerce
- Running a Web Shop on WordPress
- Selling Digital Products
- Building for eCommerce
- Building a Product Directory xiv CONTENTS
- Creating the Book Post Type
- Creating the Book Page
- Showing Off the Products
- Tasty Blogging: Using WordPress for Recipes
- Starters: The Theme
- Main Course: The Recipe Post Type
- Dessert: Custom Taxonomies
- Digestif: What You Have So Far
- Building a Links Site
- The Alternative: The Link Post Format
- Some Thoughts About Usage
- Mixing Link Posts with Traditional Content
- Short and Sweet: Other Uses for WordPress
- An Event Page and a Calendar
- Intranets and Collaboration
- Communities and Forums
- Databases
- Static Sites
- Journals and Notes
- You Can Build Anything You Want
- Working with User-Submitted Content
- INDEX
avery
(avery)
#1