Setting Up a WordPress Web Site
These instructions will guide you through the process of setting up a basic WordPress web site using shared hosting.
At the conclusion of this tutorial, you should be able to set up a basic WordPress web site from scratch, including domain registration, establishment of web hosting, and installation of the WordPress software. You should then be able to perform basic operations needed to add and maintain WordPress content.
These skills will enable you to set up your own web site in the future and/or provide guidance to individuals or small organizations on how they can set up a web site using shared hosting. These skills will also provide a foundation if you wish to further develop the IT skills needed to support more complex enterprise web infrastructure used by large organizations.
What is WordPress?
WordPress is open source content management system (CMS) software that runs on a web server and is used to create web sites.
WordPress software is best known for blogging. The term blog is short for weB LOG and emerged around 1999. A blog is a website that contains a personal online journal as well as reflections and often reader comments and links to sites that the blog author finds interesting.
For example, the Library of Congress hosts their blog using WordPress software.
WordPress is also commonly used as a general-purpose CMS for small and medium-sized web sites that do not accept comments. For example, Champaign's own Art Theatre uses WordPress for their website. The WordPress Showcase gives numerous additional example websites.
WordPress is extremely popular and is fairly easy to use (by CMS standards). In 2016, the folks that manage WordPress estimated that there were around 68 million websites worldwide using their software. Each month, around six percent of the world's population views 22.2 billion web pages generated with WordPress, which include 42 million new posts and 54.5 million new comments.
Aside from ease of use, a major reason for the popularity of WordPress is that it is open source, which means that it is both free as in beer and free as in speech. The software can be downloaded and installed at no cost, and anyone with programming skills can customize it to their needs, although most users rely on the work of a core group of developers to fix bugs and add new features.
Another major advantage of WordPress is that the appearance of pages can be modified with loadable themes that include basic layout of pages and CSS styling of page elements. By keeping presentation and content separate, the appearance of all pages on a site can be easily changed by installing a new theme or customizing an existing theme.
How Does a WordPress Website Work?
WordPress uses three specific types of information to generate web pages:
- PHP programming code that communicates with the MySQL database to generate HTML
- Page content and site configuration information stored in a MySQL database
- CSS, images and additional PHP code that are part of a theme
When a web server receives a request from a web client (browser), the following steps occur:
- The web server receives the request and runs the WordPress PHP code
- The PHP code interprets the URL to determine what page should be displayed
- The PHP code makes a request to the MySQL database to fetch the appropriate page content
- The PHP code reads the configuration information from the database and incorporates the theme files to generate HTML
- The web server sends the HTML back to the client
- The web client makes additional requests to fill out elements in the HTML like CSS files and images
The administrator(s) of a WordPress website make modifications using the Dashboard, which is a web page in the wp-admin directory under every WordPress website. Use of this administrative interface is described further in the lab for this assignment.
How Can You Get WordPress?
There are three basic ways in which you can get WordPress:
- Signing up with a hosting service that will set up WordPress for you
WordPress.org is the site where you can download the WordPress software at no cost. Anyone with modest web skills and access to a web host that has the PHP scripting language and the MySQL database can set up a website using WordPress Software. WordPress.org is also where you find the WordPress Codex documentation, which is surprisingly good by (ordinarily low) open source standards.
WordPress.com is a web hosting company that only offers sites using WordPress software. The service is free and anyone can sign up on wordpress.com and start blogging in minutes, although whether anyone will read what you write is another question.
As in life, there is no free lunch and if you use the WordPress free service there are limitations to what you can do:
- The URL for your webside will be something.wordpress.com. You get to choose the something, but the wordpress.com domain name gets stuck on the end and the best somethings are taken
- Part of the way that wordpress.com pays for the costs of hosting and for its employees is that it embeds web ads. This is something that you need to consider if you're going to be using wordpress.com for a client.
- WordPress limits the number of different themes that are available to you and does not allow you to make any significant customizations to your theme. If you don't like their stylistic choices, tough.
WordPress.com does offer premium features you can pay for, such as your own domain name, removal of the web ads, or limited customization of themes. The cost of these premium features is competitive with other hosting services, with the advantage that WordPress.com's systems administrators handle keeping the software updated and functioning smoothly. If you are dealing with a client that only has limited personnel for maintaining their website, you should consider hosting with WordPress.com.
WordPress Installed By Your Hosting Provider
The third way to get WordPress is to sign up with a web hosting service that will install WordPress for you. This can either be a standard shared hosting site with a one-click installer, or this can be Managed WordPress Hosting. Managed hosting is more costly and is most appropriate for users who are concerned about security but don't want to have to deal with the mundane aspects of site administration.
Setting Up a WordPress Website
There are three basic elements you need for a WordPress website:
- A domain name
- A web hosting provider for your domain
- An installation of WordPress
Understanding that these are three separate things will help you plan for changes in the future:
- Your domain name is your web identity and is something you may want to hang on to. This is something you should not change very often in the same way that you generally don't want to change your name except for major life events like marriage or entering a witness protection program
- You can change the web host associate with a domain name, which will allow you to change providers in case they start giving you bad service or begin to be priced uncompetitively
- You want the ability to change your CMS if your future needs dictate
Getting a Domain Name
When you sign up for shared hosting you will be asked for a domain name that you already own or for a domain name that you would like to have.
A domain name has at least two parts or labels that are separated by periods. With google.com, the .com part is called a top-level domain. The labels go from right to left in order of hierarchy. For example, with www.lis.illinois.edu:
- illinois is a sub-domain within the .edu top-level domain, which is reserved for educational institutions
- lis is a sub-domain for the Graduate School of Library and Information Science (GSLIS) within UIUC's illinois.edu domain
- The www (which is often optional) designates the public web server within GSLIS's domain
While you may not want to keep the hosting account, the domain name may be something you want to hang on to in order to have custom e-mail accounts, or just to have if you do want to set up a web site for yourself in the future. Therefore you should choose this name carefully.
- Look first for some simple variant of your name or your organization
- Most of the easy domain names are taken, so if you have a common name, your name will probably not be available, or may currently held by a squatter who will charge you a significant amount of money to relinquish that name to your ownership.
- If you can afford it, purchase the .com, .org and .net variants (the big three top-level domains) of your name. This is optional, but will prevent confusion and protect you from squatters in case you ever become rich, famous and/or powerful
- If your desired domain name is taken, avoid purchasing the variant of the domain name with an obscure top-level domain extension (e.g. .biz, .us, .xxx). Because .com is so popular, it will be the first thing folks think of when you give them a domain name. If you don't own the .com, they may not find you or will inadvertently go to a competitor's web site
- Avoid sticking random numbers or hyphens in the name in order to find one that is available. This can be very confusing to potential visitors
- Avoid exotic or quirky domain names that you might be embarrassed to be associated with if you choose to run for public office in the future
- If your project client needs a domain name, consider purchasing it for them and make a plan to transfer ownership to them later
- Domains can be purchased for a minimum of one year, regardless of how short or long your hosting account stays open
- You should not pay more than $12.99 for a domain name
When you purchase a domain name, the name, address and phone number for that domain are made public in the WhoIs database. If this is a privacy concern for you, after signup you may want to change your contact info to a public address and phone number (like that of your university department) on your registration. There are services that will anonymize your WhoIs information, although that will cost extra.
That being said, if you ever need to transfer your domain name registration to someone else, that involves a complex validation process to prevent unauthorized transfers. Be sure not to misspell your name or the contact e-mail for your account.
Finding a Hosting Provider
There are scores of web hosting providers that you can easily find by googling web hosting. These providers offer a wide range of services at a wide range of costs, and it's hard to know the good guys from the scammers. For this assignment you should find a provider that will allow you to set up a shared hosting account with one-click WordPress installation.
Shared hosting means that you are on a web server that is shared with a number of other web sites. This is generally acceptable for small sites if your provider is good, but as in life, you usually get what you pay for, although paying more doesn't guarantee better service.
- Shared hosting should cost around $10 to $15 per month
- Sign up for the shortest period of time necessary so you can back out of the relationship if you don't like them. You can always extend later
- Decline any extra features like solid state hard drives, unique IP address, premium support or SSL secure certificates. If you find you need them, you can add them later.
- Pick a provider with a money-back guarantee. Most of these providers have significant cash flow and the goodwill they engender with a potential future client are worth any marginal costs incurred if your stay is brief
If in the future the traffic to your site starts to get heavy, other more-expensive options that you can consider later include:
- Virtual private server - You share a server with other websites, but the server runs virtualization software that gives you a dedicated amount of capacity on that server so that heavy traffic on other websites doesn't slow down your website. $15 - $200 per month, depending on type of server
- Dedicated server - Your provider sets up a server on separate hardware that is dedicated to your use and is not used by any other clients. Only appropriate for heavily-trafficked websites. $100 and up
- Cloud server - This is an emerging technology where multiple users share multiple machines and resources are allocated as the needs of different users go up and down. $25 and up.
The following are providers that I have either worked with or know to be at least modestly reputable:
- DreamHost.com: Company based in California. $8/month. 97-day money-back guarantee.
- GoDaddy.com: Popular inexpensive provider in Arizona with marginal service. $8/month and 3-month minimum. 48-hour money-back guarantee.
- A2 Hosting: Small provider based in Michigan. $10/month . 30-day money-back guarantee.
- Amazon Web Services: If you have an interest in cloud computing and modest tech skills, you can run a WordPress image in an Amazon EC2 instance. If that previous sentence is Greek to you and you have no interest in learning Greek, you may not want to choose this option. This is supposedly available with their free tier although you will still need to buy a domain name.
During the sign-up process for your hosting account, you may be given the option for your provider to install WordPress (or another CMS) for you. This is the safest option, especially if you are new at this.
If your hosting provider will do the installation for you, skip to the next section on administration.
If you have confidence in your technical skills and wish to get a slightly deeper understanding of WordPress installation, you might consider doing the installation yourself rather than having your provider install the software at account creation. The process is fairly simple and is explained in the WordPress Codex. Install in a subdirectory rather than at root so your demo site doesn't get indexed by search engines. If your technical skills are minimal or you have limited time, you should forgo this option and choose one-click install at account signup.
The video below will walk you through the following steps:
- Setting up a MySQL database for WordPress in a typical database
- Downloading the WordPress code and then uploading it to a website
- Walking through the WordPress installation screens
Basic WordPress Administration
The following video will walk you through basic administrative tasks with a new WordPress web site:
- The WordPress dashboard (0:00)
- Changing themes and theme settings on the WordPress dashboard (0:15)
- Changing sidebar widgets (notably the RSS feed widget) (1:30)
- Posting a static page (2:45)
- Embedding a Google Maps IFRAME in a page (3:20)
- Modifying user settings (4:05)
- Setting the front page for a site (4:35)
- Discouraging search engines (4:50)
- The WordPress.org Codex (5:20)
The Website Life Cycle
All websites have a life cycle:
- Initial setup and beta testing
- Content and software maintenance
- Migration and/or decommissioning
Note that WordPress is not something that you can just install once and forget about. All software has bugs and security vulnerabilities, and there are frequent new releases of WordPress that fix these bugs. If you install WordPress on your own server, you need to periodically update the software - which can be done with one click in the WordPress dashboard. However, this is something that many non-technical administrators may not remember to do or be aware that they need to do on a regular basis. This is an advantage of using managed WordPress hosting or WordPress.com, where systems administrators are responsible for software upgrades.
The last phase is also one that many folks running small websites do not consider. You should not leave a dormant website hanging around on the web, especially if it contains personal information or is a demo site for your client that may get stuck in the search engines. Many hosting providers have auto-renew and will happily continue to take your money to host a forgotten site until you actively cancel your account.
Even if you close your hosting account, you can still keep your domain name by paying the yearly fee. Most registrars offer free URL forwarding, so typing in your domain name in a browser will redirect to a page you choose, like your Facebook or institutional affiliation page. E-mail forwarding is also often available, so your mail sent to your domain can be received in a webmail account like gmail.