Elegant Themes Blog

Stay up to date with our most recent news and updates

A Complete Guide To Installing WordPress

Posted on April 14 by in Tips & Tricks | 54 comments

A Complete Guide To Installing WordPress

In comparison to many other website platforms available online, WordPress has one of the simplest installation procedures. All you have to do is extract the contents of the zip file, configure your database settings, upload the files, and then run the WordPress installer.

That process sounds simple to anyone who has developed websites in the past, however it can be daunting and confusing to those who have not. And since WordPress is the most popular content management system online, it is inevitably the platform that millions of people will use for their first website.

In this article, I would like to walk you through how you can install WordPress. I will show you a quick and easy way of installing WordPress through your hosting control panel, and show you how to do it manually yourself by creating the database and uploading the core files.

Installing WordPress Through Your Website Hosting Panel

If you are looking for the most straight forward way to install WordPress, installing it through your web hosting control panel is your best option. All you have to do is run a basic installation script and enter your username and password. The installation script will create the database and take care of all the configuration settings that need to be defined.

I will be showing you how to install WordPress through cPanel as it is by far the most common hosting control panel in commercial hosting.

cPanel Home Example

cPanel is the default hosting control panel for most web hosting companies. Hosting companies frequently customize cPanel, so your hosting company’s version of cPanel may look a little different to this.

Other web hosting control panels include Parallels Plesk Panel, DirectAdmin, and Webmin. These hosting control panels also support one-click installation scripts.

Common software installation scripts include Fantastico, Softaculous, and Installatron. In my hosting control panel, the installation scripts were simply listed under Site Software.

Check your hosting control panel for an installation script icon. It only takes a minute for a hosting company to add one-click installation software to your hosting control panel; however some hosting companies do not have it activated by default. Therefore, you may need to contact them and ask them to enable support for one-click installs.

Site Software

Check your hosting control panel for one-click installs. Be sure to contact your host if you cannot find it.

The interface for your one-click installation software may look different to the screenshots below; however the process is essentially the same. The first thing you need to do is select WordPress. You will see many other software listed on this page such as discussion forums, chat scripts, and other blogging platforms.

cPanel Site Software Page

Choose WordPress from the list of software.

The next page asks you to enter information about your new website. The first part relates to the primary administrator account that is set up (i.e. your WordPress account). You need to choose a username and password and enter your email address.

Remember not to use admin as your username. That poses a major security risk as it makes it easier for hackers to guess your login details.

The installation URL defines the location of your WordPress website. As you can see from the screenshot below, if I leave the field blank, WordPress will be installed at the root of the domain (which I assume is what most people want). You can also install it in a sub-directory such as blog.

Install WordPress

The installation process will only take you a few minutes.

In the last part of the configuration page, you need to enter your website name and description. The table prefix will default to wp_. Table prefixes are useful if you want to use the database for more than one website. From an administration point of view, it also helps distinguish WordPress core tables. It is worth changing the table prefix to something more obscure to make it tougher for hackers.

The script will create a brand new database for your website. Alternatively, you can select an existing database from the drop down list.

WordPress Installation Success

Congratulations. You have just installed your WordPress website!

That is all there is to it. You will now be able to view your website at the location you defined as the installation URL. The admin area can be found at /wp-admin/ (i.e. www.yourwebsite.com/wp-admin/).

How to Install WordPress Manually

The process of installing WordPress manually for the first time can be daunting to beginners. You need to create a database, configure the wp-config.php file, upload files, and run the WordPress installer. If you do any part of this wrong, the installation will fail. So it is no surprise that many people ask their hosting companies to install WordPress for them.

As I will show you, the process of installing WordPress is straight forward. You just need to take your time and ensure you do each step correctly. If you do, you will find the process of installing WordPress manually almost as easy as using installation software.

Step 1: Download WordPress

The first thing you need to do is download the latest version of WordPress from WordPress.org.

Download WordPress

Visit WordPress.org to get the latest version of WordPress.

WordPress will be downloaded in a compressed format (in .zip or .tar.gz). You therefore need to extract the WordPress folder contained within the compressed file to your computer.

Extract the WordPress Zip File

Extract the WordPress folder from the downloaded file

Step 2: Create the WordPress Database

WordPress stores all of your data in a MySQL database. This includes your website settings, plugin settings, theme settings, users, posts, pages, and more.

To create a new database, you need to click on the MySQL Databases link within your hosting panel. If you are not using cPanel, this may be called something else; however it will probably called something obvious such as Database Management.

MySQL Databases Link

Click on the link for MySQL Databases.

At the top of the MySQL Databases page you will see an option to create a new database. You can call it anything you want. cPanel assigns your hosting account username as a prefix, however your own hosting panel may not do this.

Create MySQL Database

Enter a name for the database.

You will then receive confirmation that your database has been created. Make a note of your database name at this point.

Create MySQL Database Success

Confirmation of your database being created.

Next, you need to create a user to access your database. cPanel will also assign your hosting account username as a prefix to your username.

Create a New User

Create a new user for your database.

You can use any password you wish, however you will be encouraged to use a strong password. I recommend using the password generator that is available as it ensures that you use a password with a 100% strength rating. If you click on the Use Password button, your generated password will be automatically inserted into the password field.

Password Generator for Database User

Take advantage of the password generator to ensure you use a strong password.

Once you have completed all user fields, click on the Create User button.

Enter All Fields of New User

All fields need to be completed before you can proceed.

You will then be given confirmation that the user has been created. Be sure to take a note of the username and password as you will need this information later.

Success of Create a New User

Take a note of your database username and password.

The user has to be given access to the database. If this is the first user and database you have created, it will default to those in the fields. If other users and databases exist, you need to be sure to choose the correct user and database.

Assign User to Database

Make sure you choose the correct user and database.

On the next page, you can manage the privileges for the user. You need to ensure you give your user All Privileges as it allows WordPress to modify the database, create new tables, execute, and more.

Add User to Database All Privileges

Give your created user permission to control the database.

You will then receive confirmation that the user has been added to the database.

Add User to Database Success

Confirmation that your user can now access your database.

Step 3a: Create the WP-Config.php Configuration File (Method 1) and Upload All WordPress Files

Recently, I shared with you all some snippets for wp-config.php that allow you to change the way WordPress works; such as how many post revisions are saved and when items are deleted from trash.

Although the wp-config.php configuration can be used to change the default settings of WordPress, its main purpose is to connect the WordPress core files to the WordPress database. If the database connection details within wp-config.php are incorrect, your website will display a connection error.

There are two ways in which you can create the wp-config.php configuration file. The first way is do it manually by renaming the wp-config-sample.php file that is stored in the top level of WordPress to wp-config.php.

Rename wp-config-sample.php

Rename wp-config-sample.php to wp-config.php

You then need to open up wp-config.php in an editor such as TextPad (Windows), TextWrangler (MAC), or Bluefish (Linux/Unix).

You will see the MySQL connection settings area at the top of the file. It looks like this:

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'database_name_here');

/** MySQL database username */
define('DB_USER', 'username_here');

/** MySQL database password */
define('DB_PASSWORD', 'password_here');

All you have to do is enter your database name, username, and password. For example, using the information that I used in the screenshots above, we would have:

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'mrb_wpblog');

/** MySQL database username */
define('DB_USER', 'mrb_elegant1x5y6');

/** MySQL database password */
define('DB_PASSWORD', '{IAFL]ye)+mr');

The table prefix for your WordPress database can also be defined in wp-config.php. You can define the authentication salt too.

$table_prefix  = 'wp_';

Once you have entered your database connection details and table prefix, save the wp-config.php.

You now have to upload all WordPress files to your website. To do this, you need to use a File Transfer Protocol (FTP) client. I personally use FileZilla, however there are hundreds of free and premium alternatives available online.

To connect to your website via FTP, you need to know your FTP connection details. An FTP client will request your hostname, username, and password.

Hostname is normally your website address, however it may also be your server’s IP address. With cPanel users, the FTP username and password is usually the same as your cPanel login information; but this is not always the case.

To be sure, refer to the welcome email that your hosting company sent you when you signed up. That will detail your FTP hostname, username, and password.

FTP Site Manager

Connect to your website via a File Transfer Protocol client.

Once you are connected to your website, you can upload all the contents of the WordPress folder that you extracted from the downloaded file earlier. Before uploading, double check that you are uploading to the correct folder. In cPanel, you need to upload files to the public_html folder. Therefore, to install WordPress in a directory entitled blog, you would upload files to /public_html/blog/.

Other hosting control panels are set up differently. You may have to upload files to a folder entitled www. Again, if you are unsure about any of this, refer back to the welcome email that your hosting company sent you after signing up. If you are still unsure, contact your host and ask them to confirm the exact directory you should be uploading files to.

Upload WordPress Files

Be sure to check that you are uploading WordPress files to the correct location.

** Note: Complete either Step 3a or Step 3b; but not both. These steps will both create a functioning wp-config.php configuration file, however the creation process is slightly different.

Step 3b: Create the WP-Config.php Configuration File (Method 2) and Upload All WordPress Files

WordPress can create the wp-config.php file on your behalf. To do this, upload all files to your installation URL. This includes the unaltered wp-config-sample.php file.

When you visit your installation URL, WordPress will advise you that the wp-config.php has not yet been created.

Create WP Configuration File

WordPress can create the wp-config.php file on your behalf.

The next page details the information you will need in order to create the wp-config.php file.

The Information You Need

WordPress reminds you what information you need to create the wp-config.php file.

On the next page, enter your database name, username, and password. The database host field will be localhost most of the time (i.e. 99.99%). I cannot recall the last time a hosting company asked me to enter an IP address in this field, though it is possible that a hosting company could ask you to use an IP address instead of localhost.

Finally, there is the option to define the table prefix that your WordPress database will use.

Enter Your Database Connection Details

Enter the database connection details that you noted earlier.

On the last page, WordPress confirms that the wp-config.php file has been created correctly.

You Have Created the wp-config.php File

Congratulations. You have just created the wp-config.php file!

Step 4: Run the Famous Five Minute WordPress Installation

After you have created the wp-config.php file and uploaded all files, you need to run the WordPress installer. You will find this at the URL you uploaded your files (WordPress will redirect you to www.yourwebsite.com/wp-admin/install.php).

This part is known as the famous five minute WordPress installation process; however the truth is that this part will take you less than a minute.

All you have to do is enter your website name, your desired username and password (i.e. to login to WordPress), and your email address. The form defaults to allowing search engines to index your content, but you can disable this if you will not be launching your website for a while.

Enter Your Website Details

Enter your website name and your user account details.

The following page confirms that WordPress has been installed correctly. You will then see an option to log in.

Famous Five Minute Install 2

You will receive confirmation that WordPress has been installed.

Clicking on the Log In button will take you to the WordPress login page. Simply enter the username and password information that you just set up and you will be taken to the WordPress admin area.

Famous Five Minute Install 3

Famous Five Minute Install 3

Congratulations – you have just installed WordPress :)

To recap, to install WordPress manually you need to:

  1. Download WordPress
  2. Create the WordPress Database
  3. Create the WP-Config.php Configuration File and Upload All WordPress Files
  4. Run the Famous Five Minute WordPress Installation

You may not realise you have made any mistakes until you try to run the WordPress installation script. The most common reason for there being a connection error at this stage is the database information in your wp-config.php file being incorrect. As little as one incorrect character will stop WordPress from connecting to the database you set up.

If you do receive a connection error at this stage, retrace the steps detailed in this guide. Check that the database has been set up correctly and that the user has been assigned with access privileges for that database. Then double check that the connection details match those in the wp-config.php file.

I hope you have found this tutorial on installing WordPress useful. Be sure to subscribe to our blog for future articles as we have some great content in the pipeline.

Article thumbnail image by Myvector / shutterstock.com

54 Comments

  1. Great stuff, Kevin, but when is Divi 2 coming? ;-)

    • It shouldn’t be too much longer. Just a few more features to go :)

      • Any new teasers of what we can expect ??

      • same here..

  2. Thank you for providing this! I’ve already installed, but I’m still going to go over your post carefully. Like Lee, I’m also eagerly awaiting Divi 2

  3. Kevin I think that the title of this post says it all…

    “A Complete Guide To Installing WordPress”

    Now why didn’t you write this all those years ago when I first started using WordPress?

    My first installs were via CPanel using Softaculous or whatever it was back then but these days I do it manually.

    Thanks for taking the time to put a great WordPress resource together and making it understandable.

    • Yep Keith, a friend of mine used one click WP installation on the cpanel and that got him disinterested in using WP to build site and outta of modern website building because database was messed up! :(

    • Kevin Muldoon

      You’re welcome Keith.

      I was going to include details on how to install WordPress locally too. But that is something I can cover in a later topic (as it’s a bit more advanced).

  4. Just on Time Kevin many thanks.

    I’m a beginner. After building my website, I’ve noticed that my emails (sent from my website) did not received to users those have Gmail or Yahoo account (but received by some others). After lots of research I found that my shared IP (or my site) is blacklisted. Is it normal (I’ve not even started yet) or that means my web hosting provider is the problem. What is the best web hosting provider that you suggest. And which plan/feature I need to choose (Sharing, Re-seller, VPS, Dedicated…). You know, we like lowest prices with best quality (;

    Thanks again for your blogs.

    • Hey – this is a common problem but can also be caused even if your IP or host isn’t blacklisted. A great solution is using Mandrill (its like mailchimp for your website). It’s a free service up to 12,000 emails a month and there’s a plugin (wpmandrill) that integrates it pretty easily.

      Check it out, it also substantially lessens the chance your emails will end up in spam boxes.

      Send me an e-mail at dan@lattepress.com if you have some trouble getting it going.

      https://mandrillapp.com

      Cheers,
      Dan

      • BTW – emails still come from your email, it just is verified by mandrill as coming from you/your website and sends out the email for you.

        Also has some nice statistics for tracking opens, shows recent activity, etc. Great, great service.

        Gmail and other email providers have been blocking unverified email, so even those not on a blacklisted host have recently been having real issues delivering mail from their website to these email providers.

      • Many thanks. I’ll give it a try!

    • Kevin Muldoon

      This can occur if you are hosted on a sharing plan. It can also occur with VPS and dedicated hosting plans if the hosting company gives you an IP address that has been blacklisted (which they will deny until their face turns red, though it does occur).

      I recommend checking your IP against http://mxtoolbox.com/. That will show you where your IP is blacklisted and how to get it removed.

      Though I would be inclined to ask the hosting company to change your IP as this was not caused by you. And I’d be tempted to move host if they did not do that for you.

      • You are awesome Kevin. Many thanks.
        Yes my IP is blacklisted (according to MXtoolbox). I really appreciate your help but it also seems I did not choose a good hosting company. And after reviewing the hosting companies out there, I found it is also expensive ( I pay 9 dollars per month). Since I have nothing to lose, I decided to change my web hosting provider but I need your suggestions. Do you recommend some article that can help me.

        Also, there is a question in mind I hope you can answer. Is the location of the hosting company is important. For example, if the targeting clients are in the Middle East (like my case), I should select a hosting company the has a server near to the Middle East. Is it true?

        • Kevin Muldoon

          $9 a month is very cheap :)

          I actually have a guide on choosing a web host – though it is incomplete at the moment. Just not had time to finish it.

          I recommend dropping by http://www.webhostingtalk.com/. Start a thread and detail your requirements and you will get good advice.

          The further your server is from your target audience, the longer your response time will be; which makes it longer to load pages. I am not sure if there are many hosting companies in the middle east, though I would try and get somewhere close like Europe, rather than use a server in the USA.

          :)

          • I don’t know how to say thank you, you (and ET as whole) are very helpful. No wonder why I’ve chosen to subscribe to life time account in my first (personal account) month. I’m waiting your article, indeed. Europe server idea is great but I hope to find nice offers like USA ones.

        • I looked up the WebHostingTalk site that Kevin mentions below and found it to be helpful. One provider that kept coming up with only positive reviews was Big Scoots http://bigscoots.com/

          I decided to go with them and have not been disappointed. They reply to my support requests within minutes, as opposed to days with my previous host. And they are very reasonably priced.

          (I am not getting any compensation or anything for this recommendation.)

          • Kevin Muldoon

            Glad you found the forum useful and good to see you resolve your hosting situation :)

  5. Also – the tutorial covered this but it should be noted you shouldn’t use “admin” even though it’s the default username provided. Pick something unique, I use a series of numbers and letters and only use this for admin functions. Also, make sure to put a first and last name on the account and use this for display – but don’t use this account for content editing anyway, create a secondary account with publishing privileges for this.

    Also – I highly recommend you change the database prefix when installing wordpress, do NOT use the default wp_.

    Great tutorial Kevin!

    Cheers,
    Dan

  6. Great tutorial, I made a similar one on my website, but this surpasses it, congratulations for the article, it will be very helpful to people starting in wordpress

  7. I’ve opted for one click installation every time, although with your precise manual instructions it wouldn’t be so scary. This is definitely a share worthy article.

  8. Wow! Thanks Kevin, when I just started with WordPress I battled with this installation setup for many days to create my blog but now it looks like a cinch! However, one of the step that still make me to go to the readme file is the famous 5minute installation where it says point yoursite.com/install.php to your browser.:). Also, seems you left the $table_prefix to ‘wp_'; while top security pundits says you should change it…throw more on this light please. Thanks for this post.

    • Kevin Muldoon

      Hi bb,

      WordPress will default to http://www.yourwebsite.com/wp-admin/install.php when you enter your installation URL in your browser.

      I don’t use ‘wp_’ as the prefix myself. I used $table_prefix = ‘wp_'; in the code example as that is the line you need to find in the wp-config.php file.

      For the purpose of this tutorial, I installed a fresh copy of WordPress. The screenshot shows ‘wp_’ in the table prefix field as I left all the fields as they were for the purpose of the screenshot :)

  9. My website was set up with “admin” as the username. How can I change it?

  10. It’s complete guidance. I have question, some of my website always auto update for new release of wordpress but I am worry if there are some of my plugin doesn’t compatible with new version of wordpress. Are there any ideas for manual wordpress update? Thanks.

    • Kevin Muldoon

      Add this to the wp-config.php file in order to disable automatic updates.

      define( ‘WP_AUTO_UPDATE_CORE’, false );

      • Thank you Kevin you for you idea. I will add to my website.

    • Most of the auto-updated are bug fixes and security updates so be careful before disabling it. It’s a very rare case where auto-updates break plugins. Might try using a plugin like this though – if you’re really worried about it.

      http://wordpress.org/plugins/background-update-tester/

  11. Thanks for clearing some basics. I usually uses the softaculous or fantastico delux. but I will use this guide if I have to install mannually.

  12. Great article Kevin! I have a question that wasn’t covered in the article… what if you need to install word press but from an existing WordPress account that has tons of content and articles?

    For example I’ve had a website using WordPress for the last five years but I want to use a new ET theme using same content but have the existing site stay live while I make it so I thought about reinstalling on a subdomain to keep live and keep content

    Thx for any advice

  13. Been using Hostgator and cPanel for a while and never clicked on “Site Software” before. I was installing WP manually…!

    However, I followed the instructions (found “wordpress” under the Software link) and everything seemed to work really well – until I log in under wp-admin to get to work. Once logged in, I am told “You do not have sufficient permissions to access this page.” when I try to do anything.

    Is there a missing step, or something I should check in cPanel for permissions?

    I can’t seem to find the dialog where you set the DB to have all privileges – maybe that is the problem. But strange that the install would make me the only Admin but not set up the right permissions! Thanks.

  14. Couple of problems with the cPanel installation: if you don’t create the database first, it makes the name of the DB = “wp1″ and the username “wp1″. This doesn’t seem very secure if that’s what every site is getting. (Even with a different prefix.)

    So I deleted the installation, and created a new DB in cPanel, also a new DB user, and then assigned this user to have all privileges etc.

    When I did the Site Software > WordPress install, I selected the new DB name I’d created. Tried to log in in wp-admin – and couldn’t even log in at all!

    When I look in the wp_config.php, while it said that DB name is correct, it still says that the DB user is “wp1″ – and this automatic user doesn’t seem to have any permissions.

    Looks like I’ll return more of a manual install – at least it works reliably.

    • Kevin Muldoon

      Sorry to hear that. Everything worked fine for me when I did a test installation for the purpose of this tutorial.

      Personally, I never use installation software. I always install things manually. Perhaps I am stuck in my ways in this regard, though I think it’s better to set things up yourself so that you know everything is done correctly.

      :)

  15. After installing WordPress via cpanel softaculus, I’ve uploaded and customize my preferred theme. But its not showing on my website. How can i make my customized theme visible.

  16. I am getting “connection timed out” error in filezilla and all information is correct

Leave a Reply

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

Current ye@r *

Join 253,319 Happy Customers And Get Access To Our Entire Collection Of 87 Beautiful Themes For The Price Of One

We offer a 30 Day Money Back Guarantee, so joining is risk-free!

Sign Up Today

Pin It on Pinterest

Share This