Manually installing WordPress in cPanel [4-step how-to guide]

WordPressThese days, the majority of hosts provide a single-click solution for installing WordPress. However, some hosts are not as easy on the non-tech web-entrepreneur. Perhaps you might want to add a second installation on a server with multiple domain names? In a number of scenarios, you will need to install WordPress manually.

Here is an ultimate guide to setting up WordPress on your web-server using the very common management system – cPanel.

Preparations

Before we can begin with our step-by-step WordPress installation, we will need to ensure that we have the following in place:

  • Computer operating system: Windows, Mac OS, Linus, etc. Most are fine.
  • WordPress Zip file: You will need to download your WordPress zip file from wordpress.org.
  • Web-server account: There are many web-hosts out there. Ensure that before signing up, the host can accommodate WordPress. Also, it’s better to buy a domain and server-space as part of a single deal. Purchasing a domain from one company and space from another may lead to unforeseen complications. A great many of my clients use one.com.
  • cPanel: Most hosts will provide you with login details to connect to ‘cPanel’. cPanel is a secure, Linux-based, online control panel. It is designed to assist you in managing your domain, emails, server-space and administration details. If your host does not have cPanel, they may offer a similar product. There is no harm in asking your host for more information.
  • FTP access: (File Transfer Protocol) This will give you direct file access to your web-server. In essence, your web-server is a remote hard-drive. FTP allows you to login and connect to your remote hard-drive. This is where you will install all of your WordPress files. Either your host will provide you with these details, or you will need to set them from cPanel.
  • MySQL: Your host must be able to support MySQL. MySQL is an open source Relational Database Management System (RDBMS). It uses Structured Query Language (SQL) for adding, accessing and managing content.

Outline of installation steps

  1. Generate a MySQL database
  2. Download WordPress files
  3. Uploading WordPress files to web-server
  4. Start WordPress setup via browser

Step 1

Generate a MySQL database

All of your page content, blog posts, products, media, settings etc, are stored or referenced in your MySQL database. Pages and posts are not physical files, but are server-side and database generated. This provides flexibility, content control and the ability to easily search the content of your website once it is up and running. Don’t be afraid of MySQL! You don’t need to know SQL or become a database expert in order to use this system.

Behind the scenes – a WordPress database

A single WordPress database contains a collection of ‘tables’. These tables are used to organise information into specific areas of the system. You don’t need to understand this in order to install and use WordPress. However, it may help in the future if you wish to take your development skills to the next level.

MySQL - WordPress schema

Getting started

Now it’s time to setup up your MySQL database. As you go through this stage of the process, you will need to keep a record of the following details as they arise:

  • Database name
  • Username
  • Password

Database: Create and name a database.

  1. From within cPanel, click on the MySQL Database Wizard.
  2. Within the New Database text-box, type in a unique title. Example: ‘my_website’. Avoid using spaces and non-alphabetical characters. Underscores are good substitute for a spaces. This, along with the prefix (example:’main_’), will be your database name and will be used during the initial WordPress setup. Keep a record of this, including the prefix! The database name in the example below, should be saved as ‘main_my_website’.
  3. Click on ‘Next Step’.

WordPress MySQL Database Wizard - setup

User Account: Setup a user account to connect to the new database.

  1. Create a username. I would suggest you use the same as the database name. Make a note of it!
  2. Create and retype, a unique password. Make a note of it! It’s highly advisable that you use the Password Generator. Although is will generate an ugly password that is impossible to remember, it will be highly secure!
  3. Click ‘Create User’.

 

Create a database for WordPress

Set Privileges: Database access rights.

  1. Click on ‘All Privileges’.
  2. Click on ‘Next Step’.

MySQL: All privileges

That’s it. You have created a MySQL database to be used by your WordPress installation. For the next step, we are going to have to visit the cPanel file manager.
Step 2

Download WordPress files

Download WordPress zip file

If you haven’t already done so:

  1. Download the WordPress zip file from wordpress.org.
  2. (Optional) If you are intending to upload via FTP, one file at a time, unzip the zip file to your computer’s hard-drive. Rename the unzipped ‘wordpress’ folder. I usually name it after the project I am working on, i.e. ‘my_website’.

Open the folder: You should see something similar to this:

WordPress file structure

Now that we have downloaded (and unzipped) our WordPress files, it is now time to upload them to our web-server space.
Step 3

Uploading WordPress files to web-server

There are two main method for uploading files to your web-server:

Method 1: Upload the zip file via cPanel

This is the easiest option, but might not be available to you, depending on your web-server host. If you are able to use this method, then there is no need to initially unzip your WordPress zip file. This will be done server-side.

  1. Log into cPanel.
  2. Click on the ‘File Manager’ icon.
  3. Directory Selection: Should this dialogue box appears, select ‘Web Root (public_html/www)’ and click on ‘Go‘. If you are installing another instance of WordPress on the same server, but another domain, then you need to select ‘Document Root for’ and choose a server-side folder.
  4. The file manager should now open. Go to the folder from which you want WordPress to run. If you are creating a single website on this server account, it will be the root directory (the folder often titled ‘public_html’. For more information on this, watch this File Manager video tutorial.
  5. Click on ‘Upload’ -> ‘Choose File’ and select your WordPress zip file.
  6. Wait until file upload has completed.
  7. Once completed, go back to the ‘File Manager’ and select on your uploaded zip file and click on the ‘Extract’ icon.
  8. Once extraction has ended, close the dialogue box and refresh your browser. You should now see a ‘wordpress’ folder.

Installing WordPress: Moving files
Move your files: Now that the WordPress files are in place, we will need to move then to the correct position (or root) on the web-server:

  1. Click on the ‘wordpress’ folder.
  2. Add a check to the ‘Select All’ box.
  3. Click on the ‘Move File’ icon.
  4. The ‘Move’ dialogue box appears. Remove ‘wordpress/’ from the address box, leaving a trailing ‘/’ It should now look something like this: ‘/public_html/mywebsite.co.uk/’.
  5. Click on ‘Move File(s)’. The files should then move to the correct position.
  6. Go back to your root directory and remove the empty ‘wordpress’ folder and the original wordpress.zip file.

WordPress root directory

All of the essential WordPress files are now installed and ready to configure on your web-server (see Step 4).

Method 2: FTP – FileZilla

Alternatively, you could upload your files via a File Transfer Protocol programme, such as FileZilla. In order to do this, we will have to do two of the following things:

  1. Set up an FTP user account with our web-server (connection details).
  2. Set up an FTP client (Filezilla).

Set up an FTP user account:

In order to connect to our web-server with FileZilla, we must to create an user account within cPanel to generate the necessary security connection details. You may already have an FTP account setup by your hosts. Contact your host for connection details.

FTP accounts cPanel

  1. Login to cPanel and click on the ‘FTP accounts’ icon
  2. On the FTP Account page, there are two possibilities:
    1. If you already have an account setup, click on the ‘Configure FTP client’ icon next to the account (under ‘Special FTP Accounts’). Make a note of Username, Server and Port. The password, if this account was generated by the host, is usually the same as the login password for cPanel. Then click on ‘Create FTP Account’ to finish. Keep a record of these settings.
    2. If you need to generate an account, fill in the boxes beneath ‘Add FTP Account’, selecting the appropriate directory. Keep a record of these settings.
  3. You may want to download the ‘FileZilla Configuration File’.

Set up an FTP client (Filezilla):

Connecting to website server with FileZilla

  1. Download and install FileZilla FTP Client.
  2. Start FileZilla.
  3. If you have a FileZilla Configuration file, then upload it to FileZilla. This can be done by clicking on the menu items ‘File->Import’ and selecting the appropriate file. You should then be able to locate the FTP account by clicking on the ‘Site Manager’ button (top-left).
  4. If you don’t have a configuration file, then you will need to add FTP details manually. Click on the ‘Site Manager’ button (top-left) to bring up the ‘Site Manager’ dialogue box.
  5. Click on ‘New Site’ (left hand panel) and input your Server (Host), username, password and port. Login type must be ‘Anonymous’.
  6. Click on ‘OK’ to save. You will be able to access this account later by visiting back to the ‘Site Manager’.

If all goes well, you should be able to connect to your web-server. This part of the process is not always straight forward. If you do have any issues, please get in touch with your host.
Step 4

Start WordPress setup via browser

Now for the easy part – bring all of your hard work together and finalise your installation.

The first step in this 7 part process, is to select your preferred language from the available list. Once, you have done this, click on ‘Continue’.

WordPress: Select language

You will now be presented with an information screen. You don’t need to do anything, but it might be worth reading through to ensure that you are ready to continue. Click on ‘Let’s go!’.

WordPress: Information screen

This screen is used to connect to your MySQL database. You will need to copy in the database name and other login details that you generated during Step 1. Typically, the Database Host is set to ‘localhost’. If this fails after submitting this form, get in touch with your web-host. They may have a different Database Host name for you to use.

The Table Prefix may be left as it is. However, if you are connecting to a MySQL database that already has content, the prefix will help you to denote this particular installation. ‘wp_’ will be applied to the beginning of each database table name, i.e. “wp_posts”.

When you are ready, click ‘Submit’ to continue.

WordPress: MySQL connect

The next screen is fairly self-explanatory (and perhaps a bit quirky). Click on ‘Run Install’.

WordPress: Run install

Now it’s time to describe your website and create a ‘master’ login and user account. This master login will be the main login for the administration area of your website – wp-admin.

WordPress: Needed information

Site Title: This will be the primary name of your site and may be highly visible on the site, depending on your selected theme and later setup. Choose it well. Be descriptive and keep it short.

Username and Password: You can later add as many user accounts to WordPress as you wish. However, this login will be the primary and permanent access point to your website. You will be able to change your password at a later stage. Your username will be difficult to alter, so choose wisely! Don not use ‘admin’. If you do, then you will be giving half of your security login to the cyber criminals. So many websites use ‘admin’, unaware of the risks.

Your Email: You must provide a valid email address. Should you loose your login, you will be able to retrieve it via this address. Also, this email will be used for various onsite correspondence. I’d recommend creating an email based on your websites’s domain name, i.e. ‘info@mywebsite.co.uk’. This certainly looks more professional and ties in with branding.

Search Engine Visibility: I always tick this when I am developing a new WordPress website. It will ‘discourage’ search engines such as Google from indexing the pages of your website and making them available in search results. You don’t want to start off on the wrong foot. Wait until your site contains useful content before letting the search engines know about it. You can later reverse this setting, by logging into wp-admin and visiting ‘Settings->Reading’.

Click on ‘Install WordPress’ to complete.

Now you should, if all has gone according to plan, see the Success screen. Well done! you have installed WordPress on your web-server.

WordPress: Success screen

 

All you need to do now, is login. You can do this by clicking on the ‘Log in’ button of the success page.

WordPress: Login screen

You can also access this feature by typing the following after your domain name: /wp-login.php.

Example: http://www.mywebsite.co.uk/wp-login.php

I prefer to use ‘/wp-admin/’. If you use this address and are not currently logged in, you will automatically be redirect to the login page. If you are already logged in, then you will enter WordPress admin.

If you have forgotten your login details: Click on the ‘Lost your password?’ link on the login screen. This will send out instructions to your email address.

Remember Me: Enable this feature if you want you want to remain logged in after you have closed and reopened your web-browser.

Manual installation complete!

Login, create content and enjoy using WordPress. I will be writing plenty of other articles on WordPress, so please do visit back in the future. Please add any question of comment your have on this subject in the comment section below.

If you want me to inform you of new posts on this topic, then please add yourself to my mailing list:

Leave a Reply

Your email address will not be published. Required fields are marked *