Chapter 1. The WordPress Landscape

Since you picked up this book, it’s likely that you already know at least a bit about WordPress. You probably realize that it’s a brilliant tool for creating a huge variety of websites, from gossipy blogs to serious business sites. However, you might be a bit fuzzy on the rest of the equation—how WordPress actually works its magic, and how you can use WordPress to achieve your own website vision.

In this chapter, you’ll get acquainted with life the WordPress way. First, you’ll take a peek at the inner machinery that makes WordPress tick. If you’re not already clear on why WordPress is so wonderful—and how it’s going to save you days of work, years of programming experience, and a headful of gray hairs—this discussion will fill you in.

Next, you’ll consider the types of sites you can build with WordPress, and how much work they need. As you’ll see, WordPress began life as a blogging website, but has since mutated into a flexible, easy-to-use tool for creating virtually any sort of site.

Finally, you’ll face your first WordPress decision: choosing a home for your WordPress site. You’ll discover you have two options. You can use WordPress’s free hosting service (called WordPress.com), or you can install the WordPress software on another web host, for a monthly fee. Both approaches work, but the choice to use WordPress.com imposes a few limitations you should understand before you decide.

How WordPress Works

You probably already realize that WordPress isn’t just a tool to build web pages. After all, anybody can create a web page—you just need to know a bit about HTML (the language that web pages are written in) and a bit about CSS (the language that formats web pages so they look beautiful). It also helps to have a first-class web page editor like Adobe Dreamweaver at your fingertips. Meet these requirements, and you’ll be able to build a static website—one that looks nice enough, but doesn’t actually do anything (Figure 1-1).

Figure 1-1. In an old-fashioned website, a web designer creates a bunch of HTML files and drops them into a folder on a web server. When someone visits one of those pages, his browser renders that same HTML file as a web page. WordPress works a little differently—it builds its pages in real time, as you’ll see next.
Note

Just in case your webmaster skills are a bit rusty, remember that a web server is the high-powered computer that runs your website (and, usually, hundreds of other people’s websites, too).

With WordPress, you strike up a different sort of partnership. Instead of creating a web page, you give WordPress your raw content—that’s the text and pictures you want published as an article, a product listing, a blog post, or some other type of content. Then, when a visitor surfs to your site, WordPress assembles that content as a made-to-measure web page.

Because WordPress is a dynamic environment—it creates web pages on the fly—it provides some useful interactive features. For example, when visitors arrive at a WordPress blog, they can browse through the content in different ways—looking for posts from a certain month, for example, or on a certain topic, or tagged with a certain keyword. Although this seems simple enough, it requires a live program that runs on a web server and assembles the relevant content in real time. For example, if a visitor searches a blog for the words “tripe soup,” WordPress needs to find all the appropriate posts, stitch them together into a web page, and then send the result back to your visitor’s web browser. More impressively, WordPress lets visitors write comments and leave other types of feedback, all of which become part of the site’s ongoing conversation.

WordPress Behind the Scenes

In a very real sense, WordPress is the brain behind your website. When someone visits a WordPress-powered site, the WordPress software gets busy, and—in the blink of an eye—it delivers a hot-off-the-server, fresh new web page to your visitor.

Two crucial ingredients allow WordPress to work the way it does:

  • A database. This is an industrial-strength storage system that sits on a web server; think of it as a giant, electronic filing cabinet where you can search and retrieve bits of content. In a WordPress website, the database stores all the content for its pages, along with category and tag labels for those pages, and all the comments that people have added. WordPress uses the MySQL database engine, because it’s a high-quality, free, open-source product, much like WordPress itself.

  • Programming code. When someone requests a page on a WordPress site, the web server loads up a template and runs some code. It’s the code that does all the real work—fetching information from different parts of the database, assembling it into a cohesive page, and so on.

Figure 1-2 shows how these two pieces come together.

Figure 1-2. When a browser sends a request to a dynamic website, that request kicks off some programming code that runs on the site’s server. In the case of WordPress, that code is known as PHP, and it spends most of its time pulling information out of a database (for example, retrieving product info that a visitor wants to see). The PHP then inserts the information into a regular-seeming HTML page, which it sends back to the browser.

WordPress Themes

There’s one more guiding principle that shapes WordPress—its built-in flexibility. WordPress wants to adapt itself to whatever design you have in mind, and it achieves that through a feature called themes.

Basically, themes let WordPress separate your content (which it stores in a database) from the layout and formatting details of your site (which it stores in a theme). Thanks to this system, you can tweak the theme’s settings—or even swap in a whole new theme—without disturbing any of your content. Figure 1-3 shows how this works.

Figure 1-3. When you visit a page from a WordPress site, WordPress combines the content (which it stores in a database) with formatting instructions (which are stored in the theme’s template files). The end result is a complete web page you see in your browser.

If you’re still not quite sure how WordPress helps you with themes, consider an example. Imagine Jan decides to create a website so he can show off his custom cake designs. He decides to do the work himself, so he not only has to supply the content (the pictures and descriptions of his cakes), but he also has to format each page the same way, because each page has two parts—a description of the cake and a picture of it—and he wants his pages to be consistent. But, as so often happens, a week after he releases his site, Jan realizes it could be better. He decides to revamp his web pages with a fresh, new color scheme and add a calorie-counting calculator in the sidebar.

Applying these changes to a non-WordPress website is no small amount of work. It involves changing the website’s style sheet (which is relatively easy) and modifying every single cake page, being careful to make exactly the same change on each (which is much more tedious). If Jan is lucky, he’ll own a design tool that has its own template feature (like Dreamweaver), which will save editing time. However, he’ll still need to rebuild his entire website and upload all the new web pages.

With WordPress, these problems disappear. To get new formatting, you tweak your theme’s style settings, using either WordPress’s control panel (called the dashboard), or by editing the styles by hand. To add the calorie counter, for example, you simply drop it into your theme’s layout (and, yes, WordPress does have a calorie-counting plug-in). And that’s it. You don’t need to rebuild or regenerate anything, go through dozens of pages by hand, or check each page to try to figure out which detail you missed when you copied HTML from one page to another.

What You Can Build with WordPress

There are many flavors of website, and many ways to create them. But if you want something reasonably sophisticated and you don’t have a crack team of web programmers to make that happen, WordPress is almost always a great choice.

That said, some types of WordPress websites require more work than others. For example, if you want to create an ecommerce site complete with a shopping cart and checkout process, you need to ditch WordPress or rely heavily on someone else’s WordPress plug-ins. That doesn’t necessarily make WordPress a poor choice for ecommerce sites, but it does present an extra challenge. (In Chapter 14, you’ll take a closer look at what it takes to build a basic ecommerce site that uses a plug-in to go beyond WordPress’s standard features.)

In the following sections, you’ll see some examples of WordPress in action. You’ll consider the types of sites that use WordPress most easily and most commonly. Along the way, you should get a feel for how WordPress suits your very own website-to-be.

Blogs

As you probably know, a blog is a wildly popular type of site that consists of separate, dated entries called posts (see Figure 1-4). Good blogs reflect the author’s personality, and are informal and overflowing with content.

When you write a blog, you invite readers to see the world from your viewpoint, whether the subject is work, art, politics, technology, or your personal experience. Blogs are sometimes described as online journals, but most blogs are closer to old-school newspaper editorials or magazine commentary. That’s because a journal writer is usually talking to himself, while a half-decent blogger unabashedly addresses the reader.

Figure 1-4. Paul Krugman of the New York Times writes this traditional blog. Here’s what you see when you arrive at http://krugman.blogs.nytimes.com. Scroll down and you see a dozen or so of his most recent posts.

Blogs exhibit a few common characteristics. These details aren’t mandatory, but most blogs share them.

  • A personal, conversational tone. Usually, you write blogs in the first person (“I bought an Hermès Birkin bag today” or “Readers emailed me to point out an error in yesterday’s post”). Even if you blog on a serious topic—you might be a high-powered executive promoting your company, for example—the style remains informal. This gives blogs an immediacy and connection to your readers that they love.

  • Dated entries. Usually, blog posts appear in reverse-chronological order, so the most recent post takes center stage. Often, readers can browse archives of old posts by day, month, or year (see “Recent Posts” in Figure 1-4). This emphasis on dates makes blogs seem current and relevant, assuming you post regularly. But miss a few months, and your neglected blog will seem old, stale, and seriously out of touch—and even faithful readers will drift away.

  • Interaction through comments. Blogs aren’t just written in a conversational way, they also “feel” like a conversation. Loyal readers add their feedback to your thoughts, usually in the form of comments appended to the end of your post (but sometimes through a ratings system or an online poll). Think of it this way: Your post gets people interested, but their comments get them invested, which makes them much more likely to come back and check out new posts.

Some sites take the basic structure of a blog and apply it to different types of content. One popular example is the photo blog, which ditches text in favor of pictures (see Figure 1-5). Similarly, you can find plenty of video blogs that feature a video clip in every post.

Figure 1-5. You can put photo blogs to a variety of uses—everything from serious photography to lowbrow fun. Examples of the latter include sites like http://failblog.org and, shown here, http://damnyouautocorrect.com, where each page is a screen capture from an iPhone conversation gone horribly wrong.

In recent years, people have become increasingly interested in super-lightweight blogs and blog-like tools. Examples include the micro-posts on Tumblr, the short messages on Twitter, and the pictures on Instagram and Pinterest. As you’ll see in this book, you can create a basic microblog with WordPress, too. However, WordPress makes the most sense when you want to create something a little less casual and a little more permanent. For example, a collection of random selfies makes sense on Instagram, but a series of lovingly arranged, captioned photographs documenting your trip to Iceland fits nicely into a WordPress site that uses a photo theme.

Blogging with WordPress is a slam-dunk. After all, WordPress was created as a blogging tool (in 2003), and has since exploded into the most popular blogging software on the planet. In fact, if you plan to create a blog, there’s really no good reason not to use WordPress. Although there are several other blogging platforms out there, and they all work reasonably well, none of them has the near-fanatical WordPress community behind it, which is responsible for thousands of themes and plug-ins, and might even help you solve hosting and configuration problems (just ask your questions in the forums at http://wordpress.org/support).

Other Types of WordPress Sites

Blogs are fantastic, exciting things, but they’re not for everyone, even if you have a streamlined tool like WordPress at your disposal. The good news is that, because of its inherent flexibility, WordPress makes an excellent program for building other kinds of websites, too. In fact, as long as you’re willing to do a little theme customization, you can convert your WordPress pages into something that doesn’t look one whit like a traditional blog. The following sections show you some of the types of sites you can create.

Stories and Articles

WordPress makes a great home for personal, blog-style writing, but it’s an equally good way to showcase the more polished writing of a news site, web magazine, short-story collection, scholarly textbook, and so on. WordPress also allows multiple authors to work together, each adding content and managing the site (as you’ll discover in Chapter 11).

Consider, for example, the Internet Encyclopedia of Philosophy shown in Figure 1-6 (and located at www.iep.utm.edu). It’s a sprawling catalog of philosophy topics amassed from about 300 authors and maintained by 25 editors, all with heavyweight academic credentials. Created in 1995, the site moved to WordPress in 2009 to make everyone’s life a whole lot easier.

Figure 1-6. Although WordPress powers this website, you’ll see few of the hallmarks of a traditional blog. The “posts” are actually long, subdivided articles, without dates or comments.

The Internet Encyclopedia of Philosophy is an interesting example for the sheer number and size of the articles it hosts. However, you’ll also find WordPress at work in massive news sites, including TechCrunch, TMZ, Salon, Boing Boing, ThinkProgress, and the CNN site Political Ticker.

Catalogs

WordPress is particularly well suited to websites stuffed full of organized content. For example, think of a website that has a huge archive of ready-to-make recipes (Figure 1-7). Or consider a site that collects classified ads, movie critiques, restaurant reviews, or custom products.

Note

The dividing line between blogs and catalogs can be a fine one. For example, you can find plenty of cooking-themed WordPress sites that sort recipes by category and by date in a blog-style listing. However, most catalog sites go beyond the blog in some way, and require the advanced theme customization skills you’ll develop in Part IV of this book.

Because WordPress relies on a database, it’s a wizard at organizing massive amounts of content. In a properly designed catalog site, people can find a review, product, or whatever else they want in a number of ways, such as searching by keyword or browsing by category.

Figure 1-7. This WordPress site features a huge catalog of recipes and articles that have cooking tips. What makes the site distinctly different from a blog is the fact that it doesn’t organize recipes by date, displayed one by one in reverse-chronological order. Instead, it orders them in common-sense categories, like Meat, Seafood, and Mushrooms.

Business Sites

WordPress isn’t just a great tool for self-expression, it’s also an excellent way to do business. The only challenge is deciding exactly how you want to use WordPress to help you out.

The first, and simplest, option is to take your existing business website and augment it with WordPress. For example, the Ford Motor Co. uses WordPress for its news site http://social.ford.com, which invites customers to post feedback and share the hype about new vehicles on Facebook and Twitter. But if you head to Ford’s main site, www.ford.com, and you search for a local dealer or ask for a price quote, you’ll be entirely WordPress-free. These parts of Ford’s site rely on custom web applications, which Ford’s web developers created.

Other companies do use WordPress to take charge of their entire websites. Usually, they’re smaller sites, and often the goal is simply to promote a business and share its latest news. For example, you could use WordPress to advertise the key details about your new restaurant, including its location, menu, and recent reviews. Or imagine you need more detailed information for a tourist attraction, like the detailed website for Perth Zoo (Figure 1-8).

Figure 1-8. The Perth Zoo website has it all—detailed menus, information about animals, a review of the zoo’s policies, and up-to-date news. But there’s a catch: To make this website look as beautiful as it does, the designers needed to combine WordPress knowledge with some traditional web design skills (including a good knowledge of HTML and CSS).

A greater challenge is when a business doesn’t just want to advertise or inform with its website, but it also wants to do business over the Web. For example, imagine you create a site for your family-run furniture store, like the one shown in Figure 1-9. You don’t just want to advertise the pieces you offer; you want to take orders for them, too, complete with all the trappings typical of an ecommerce website (such as a shopping cart, a checkout page, email confirmation, and so on). In this situation, you need to go beyond WordPress’s native features and add a plug-in to handle the checkout process.

For some small businesses, an ecommerce plug-in offers a practical solution. But for many others, this approach just isn’t flexible enough. Instead, most ecommerce sites need a custom-tailored transaction-processing system that integrates with other parts of their business (like their inventory records or their customer database). This functionality is beyond the scope of WordPress and its plug-ins.

Tip

To see more examples of what you can do with WordPress, including plenty of business sites, visit the WordPress showcase at http://wordpress.org/showcase.

Figure 1-9. On this furniture website, you can view the chairs for sale, their prices, and their dimensions. All this is possible with WordPress’s standard features and a heavily customized theme. But if you want to allow online ordering, you need to use a plug-in from a third party.

WordPress Hosting

If you’ve reached this point, it’s safe to say you’re on board with WordPress. Now you need to decide exactly where you’ll put your WordPress site.

The simplest (and cheapest) option is to sign up for the free WordPress.com service, which is run by the fine folks at Automattic (founded by a guy named Matt Mullenweg, hence the “matt” in the company name). The deal is simple: They give your website a home, some exposure, and a free web address that ends in .wordpress.com (although you can buy a custom domain name if you want), and you accept a few limitations—most notably, your website can’t show ads or use other people’s plug-ins, and you can’t edit your theme by hand.

Note

The people at Automattic are also largely responsible for (but not completely in control of) the development of the WordPress software. That’s because Automattic employs many of WordPress’s lead developers. However, WordPress is still a community-driven, open-source project.

Your other hosting option is to install WordPress on your web host’s server and build your site there. The drawback here is that you need to pay your web host. And although you won’t be on the hook for much coin—good plans run just a few dollars a month—you still need to open your wallet. Generally, WordPressers call this approach self-hosting, even though someone else actually does the hosting. In other words, you’re not running a web server in your basement; you’re contracting with a web hosting company for some space on its servers.

Note

Although the WordPress nomenclature is a bit confusing, the real story is simple. WordPress is the software that powers all WordPress sites. (Sometimes, people call the software WordPress.org, because that’s the web address where you download the program.) On the other hand, WordPress.com is a free web hosting service that uses the WordPress software. So no matter where you decide to host your site—through WordPress.com or on your own web host—you’ll be using the WordPress software.

Choosing Where to Host Your Site

If WordPress.com is so eager to give you a free, reliable web host, why wouldn’t you use it? Here are a few good reasons to consider self-hosting instead:

  • You want to create a site that isn’t a blog. In this chapter, you’ve seen plenty of examples of websites, from webzines to recipe catalogs to slick business sites. Many of those sites are more difficult to create with WordPress.com (if not impossible). That’s because WordPress.com prevents you from editing the code in your theme, or from using a theme that isn’t in WordPress.com’s pre-approved list of about 200 themes.

  • You already have a website. With most third-party web hosts, you won’t have to pay extra to add a WordPress site. And if you already have a web presence, it makes sense to capitalize on the domain name (that’s your web address, like www.PajamaDjs.com) and the web space you already have.

  • You want complete control over your site’s appearance. If you’re the sort of person who can’t sleep at night unless you get the chance to tweak every last WordPress setting, you definitely want the free rein of a self-hosted site. With it, you can choose from thousands of site-enhancing plug-ins and a universe of custom themes.

  • You want to make money advertising. Ordinarily, WordPress.com doesn’t allow its sites to display ads or to participate in affiliate programs (where you send traffic to a retailer, who shares any resulting revenue with you). However, WordPress.com is in the midst of a pilot program called WordAds, which allows a limited type of advertising, provided your site is accepted into the program. You can learn more and apply at http://wordpress.com/apply-for-wordads.

    Note

    Even though you can’t run standard ads on WordPress.com, you can still make money there. WordPress.com is perfectly fine with a website that promotes a particular product or business, includes a PayPal-powered Donate button, or advertises your own personal fee-based services.

  • You don’t want your readers to see ads, ever. WordPress.com is a bit sneaky in this regard. In some cases, it will insert an ad into one of your pages. This usually happens when someone stumbles across your site from a search engine. It doesn’t happen if a visitor surfs from one WordPress.com site to another, or if a visitor is logged in with a WordPress.com account. For these reasons, you might never notice the ads that other people could see. If this behavior bothers you, you can remove the ads from your site, but you need to pay WordPress.com a yearly fee (currently, $30 per year).

Note

WordPress.com isn’t necessarily as free as you think. In addition to paying for ad-free pages, you can opt (and pay) for a personalized web address, the ability to edit the fonts in your theme, and extra space for big files and hosted video. You can get information about all these upgrades at http://support.wordpress.com/upgrades. It’s worth noting that self-hosters get virtually all these features through their own web hosts, so if you plan to buy several upgrades, you should at least consider getting your own web host instead—it may end up costing you less.

In general, self-hosting is a slightly more powerful and more expensive strategy than hosting with WordPress.com. But there are reasons why people actually prefer to use WordPress.com rather than self-host:

  • No-headache maintenance. If WordPress.com hosts your site, all the website maintenance is taken care of. You don’t need to think about installing patches or WordPress updates, or making backups of your site.

  • Better discoverability. If your site is on WordPress.com, people can stumble across it in two ways. First, they can browse the giant index of popular subject tags at http://wordpress.com/tags, and pick one you use in your posts. Second, if you write a particularly popular post, your site may appear in the “Blog of the Day” list that WordPress.com features prominently on its front page (http://wordpress.com), and attract a click-storm of new traffic.

  • Reliability. It’s not hard to find a good web host that has solid WordPress support. That said, no one serves as many WordPress sites as WordPress.com—it uses over 1,000 web servers to hand out billions of WordPress pages every month. That means that if a page on your WordPress site suddenly goes viral with a burst of popularity, WordPress.com will handle the challenge, while a less able web-hosting service could buckle.

WordPress.com Sites vs. Self-Hosted Sites

Struggling to keep all the details about WordPress.com and WordPress.org in mind at once? Table 1-1 summarizes the key differences. Remember that the WordPress program is packed with functionality, and the table leaves out the long list of features that work equally well in WordPress.com and on self-hosted WordPress sites.

Table 1-1. Comparing WordPress.com and self-hosted sites
YOU WANT TO…WITH WORDPRESS.COMWITH A SELF-HOSTED SITE

Pay as little as possible.

The starting cost is free, but various enhancements cost money.

You pay the cost of web hosting. That’s typically $5 to $10 per month, unless your site is wildly popular, in which case you need to pay your host double or more to get a plan that ensures good performance during times of high traffic (see the box on “Web Hosts with Premium Performance”).

Forget all about web server maintenance.

Yes.

No, you need to back up your content regularly, and update plug-ins and themes with new versions (but fortunately both jobs are pretty easy).

Use a custom website address (like www.myName.com).

Yes, but it requires an upgrade ($18 to $25 per year).

Yes, but you must buy it through your web host or a domain registrar.

Get good-looking, readymade themes.

Yes, you can choose from about 200 themes (and the list is growing).

Yes, you can choose from more than 2,000 free themes (and the list is growing).

Change the layout of your theme and add new widgets.

Yes (although you’re limited to the widgets that WordPress.com approves).

Yes (and you can get more widgets by installing plug-ins).

Edit the styles (fonts and formatting) in your theme.

Yes, but it requires an upgrade ($30 per year).

Yes.

Change the code in your theme files.

No.

Yes.

Create a non-blog site.

Yes, if you can find a suitable theme, but there are many limitations.

Yes.

Show pictures and videos.

Yes, but it costs extra if you want to host the video files on your website, instead of through a service like YouTube or Vimeo.

Yes, but you’ll probably still need a hosting service like YouTube or Vimeo for your videos.

Make money with ads.

No, unless you’re accepted into WordPress’s WordAds program (which has its own restrictions).

Yes.

Keep ads off your site.

Yes, but it requires an upgrade ($30 per year).

Yes (there are no ads, unless you put them there).

Let multiple people post on the same site.

Yes.

Yes.

Create multiple sites.

Yes (but if you buy any upgrades, you need to buy them separately for each site).

Yes.

Create a multisite network that allows other people to create their own personal sub-sites.

No.

Yes.

Use WordPress plug-ins to get even more features.

No.

Yes, you can choose from a staggeringly large and ever-expanding collection of about 30,000 plug-ins.

Get help with your problems.

Yes, through the forums at http://forums.wordpress.com.

Yes, through the forums at http://wordpress.org/support.

Overall, the best advice is this: If you’re a keen WordPress fan with a bit of curiosity, a smattering of computer experience, and a willingness to experiment (and if you’ve picked up this book, you almost certainly fit that description), you’ll be happiest self-hosting WordPress.

However, if you don’t have a web host and you’re a bit overwhelmed, it’s a perfectly good idea to start with WordPress.com. You can always migrate to a self-hosted WordPress site later on, and Appendix A, describes exactly how to do that. The only recommendation with this strategy is that you buy your own domain name from the get-go, as described on “Choosing a Web Address”. That way, should you move to a self-hosted WordPress site, you can keep the address you used when you were at WordPress.com, and you won’t lose the audience you spent so long building up.

Get WordPress: The Missing Manual, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.