WordPress is the most popular Content Management System (CMS) in the world, with over 60 million downloads to date. There are many, many reasons for this, but the two biggest are probably that it’s both free and well supported.
This tutorial series will guide beginners through the essentials of WordPress, from downloading and installing the software, to writing and managing posts, to controlling the look and feel of their website.
This tutorial will cover setting up a new WordPress website manually.
Don’t worry, it’s easy.
This tutorial assumes you have a website host and domain that supports PHP and MySQL (most do). If you don’t have a hosting provider, there are several recommendations available on the official site.
Estimated Completion Time: < 15 Minutes
WordPress.com Versus WordPress.org
There is some confusion on the difference between WordPress.com and WordPress.org.
WordPress.com is a site where you can go and setup a blog through them. They will handle the setup and hosting, so you can just get started blogging. This is a great solution for casual bloggers, however your options are also limited. For instance, you can only install certain themes and plugins.
WordPress.org simply offers an install package (and fantastic support information), which you must then setup using your own domain and hosting. It requires a little more setup and a little more technical knowledge (but not much!), but there are no limits on what you can do with the site.
This tutorial series exclusively covers WordPress.org, although some topics will also be universally applicable. Furthermore, many hosting providers have one-click installs, which can expedite this process, although sometimes the hosting providers don’t keep their one-click install software current. This tutorial assumes you are installing the software manually.
Before you can do anything with WordPress, you need to download the software. You can grab it from WordPress.org; just click the friendly blue button on the homepage that says “Download WordPress X.Y.Z” (where X, Y, and Z are the current version numbers). This will take you to the Download page, where you can get the software package as a .zip or a .tar.gz file. Choose whichever you prefer, and save the package to your desktop, or anyplace else where you can readily find it.
Unzip the download and you should find a folder with a single folder called “WordPress” inside. Open that and you’ll get a screenshot like the below:
Creating a Database & User
This step can vary from one hosting provider to another, so I’m going to keep it pretty generic and use a common tool called phpMyAdmin. I would recommend checking our your provider’s support information for more details about creating databases and database users.
Sign into your hosting provider’s dashboard, and launch phpMyAdmin. You’ll get a screen that looks like this:
Under the “Action” panel, find “Create new database”. Enter a name for your database (we’re using “my-blog” in this example), and click the “Create” button. Don’t worry about the collation; we can leave this as default. Make a note of your database name; we’ll use this in the next step of the setup.
That’s it, we’ve just created a database for WordPress to use. Now we need to create a database user and give them rights to read from and write to that database. To start, click the “Privileges” tab on top to access the Privileges section of phpMyAdmin:
Next, click “Add New User”. On the field, create a username for the user, such as “wordpress” (we’re using “blog-user” in this example). Skip “Host” and enter a password. Make sure that it’s a long, difficult to guess string. If you’re stumped, you can always use the “Generate Password” button. Finally, skip to the bottom and hit “Go” to create the user.
Make sure to jot down the username and the password. Like the database name, we’ll need them in the next step.
Now that we’ve created our user, we’ll need to assign it rights to the database we setup. Click the “Privileges” tab again to get back to the main “Privileges” screen. Find our new user and click the “Edit Privileges” icon on the far left.
On the “Edit Privileges” screen, browse down to the “Database Specific Privileges” section. From the dropdown, select the database you created previously (remember, the example is “my-blog”). The page will refresh, showing privileges for our specific database. Simply select “Check All” at the top, and click go.
We just created a new database and database user, and gave the user full rights to our database. This is probably the most technical step of the WordPress setup process, so pat yourself on the back!
The install package comes with a config.php file ready to use called wp-config-sample.php. Simply right click and rename the file to wp-config.php.
Open your newly renamed file in a text editor such as Notepad. We need to edit a few fields:
DB_NAME: This is the name of the database we setup in the previous step
DB_USER: This is the username we setup in the previous step
DB_PASSWORD: This is the password we setup in the previous step
DB_HOST: The database host is generally “localhost”, however some hosting companies are different (here’s a list of some common hosts). If “localhost” doesn’t work, you should contact your hosting company.
DB_CHARSET: You can leave this value as default.
DB_COLLATE: You can leave this value as default.
Next, we need to generate our “Security Keys”. This step is simple, simply go to this website, which will generate the keys out output them like this:
Simply paste these values into the wp-config file and save.
You’re probably wondering why we setup those security keys. This is a security feature that enables to you invalidate all the site’s cookies, effectively logging everyone out of the site. That way, if you get hacked, you have a way to boot the hacker out of your website. More information on security keys is available in the WordPress Codex.
Uploading to Your Host
Now we’re ready to upload our package to our server. Before doing that, we need to decide where we’re going to put it. If it’s only going to be part of your site (the blog, for instance), you’ll need to create a directory to hold it and upload the package there. Otherwise, we’ll upload everything to the root (main directory) of the site.
In order to upload the software, you’ll need an FTP (File Transfer Protocol) Client of some sort. There are a lot of great free options available, and I would recommend Filezilla, which is free and open-source. You can download Filezilla here (choose the client, not the server).
In your FTP program, connect to your website and browse to where you’ll be uploading the install package.
Next, upload the contents of the “WordPress” folder, but not the folder itself, to the directory. Once everything is uploaded it should look like this:
We’re in the home stretch! Now all we have to do is run the install program, wp-admin/install.php. Just add that to the end of your URL and hit Enter.
If you installed WordPress to your root (main directory), it will be http://yourdomain.com/wp-admin/install.php.
If you set it up in a directory (e.g. blog), then it will be http://yourdomain.com/blog/wp-admin/install.php.
You’ll need to fill out a simple form. Provide the Site Title (the name of your website or the portion of your website for which you’re using WordPress), setup a username and password, and enter your email address. There’s also a toggle for whether you want your site to be available to search engines. If you un-check this, your site will not show on Google.
WordPress will default to “admin” for the username, but I would highly recommend against using this. Hackers know that “admin” is the default, so that’s a good place for them to start if they’re trying to gain access to their site. Pick a unique username, and use a strong password.
Click “Install WordPress” to continue. The install will process for a few seconds, and then you’ll be prompted to log in.
That’s it! In only 15 minutes, probably less, we’ve setup a WordPress site.
In this tutorial we covered the following:
- The difference between WordPress.com and WordPress.org
- Downloading and unpacking the install package
- Seting up a database and a database user
- Editing the wp-config.php file
- Uploading everything to our server
- Running the install script
Be sure to check back for the next portion of this series, where we will discuss writing our first post.