HostGator Web Hosting

Create a Local Development WordPress Site using WAMP on your PC or MAMP on your Mac


Building a professional WordPress site that represents your business or personal brand takes time and hard work.  Many beginners start by publishing a live site and editing it as they go along.  That approach often looks sloppy to anyone who might prematurely stumble upon it.  It can also have a hugely negative impact on SEO.

Search engines will typically find and index new content (posts and/or pages) on your WP site quickly.  However, it can take weeks or even months to re-index updated content meaning that when your site is complete, the search results may still reflect your initial shoddy content.Make Development WP site with MAMP for Mac and WAMP for PC  Therefore, to avoid SEO troubles and projecting an unprofessional image you should make sure your design and content is perfectly optimized before pushing the site to a live domain.

The best practice is to create a local development site on your computer using a program that replicates server software (e.g. mySQL) and moving it to a live server when it’s finished.  Your computer and browser can handle the display of HTML and CSS just fine on their own but to run scripts like PHP and utilize mySQL databases (both of which WordPress is based on) you will need additional software.  Therefore, in this tutorial we will walk you through setting up a local development server on your PC using the WAMP application and for Mac users we’ll show you how to do it with MAMP.  Let’s start with setting up a local WordPress site on your PC with WAMP.

Setting up a Local Development WordPress Site on your PC with WAMP

Step 1:  Begin by downloading WAMP

Here’s the link to…  download WAMP

When you click the download link the installation process will begin and you’ll be redirected to (Sourceforge is a trusted resource for software so you need not worry about viruses).  > When the WAMP download process is complete, launch and click through the installer using the default settings.  > Open the WAMP application.

Note: the application rests in your system tray, it does not open a new window

Step 2: Create a directory for your site

Create a folder in C:\wamp\www to house your sites files.  The directory name does not matter.

Step 3: Download

Visit and download the most recent version.  > Extract the files and copy them to the folder you created in step 2.

Step 4: Create a mySQL Databasephpmyadmin

To create a mySQL database for your site open an internet browser and visit http://localhost (This is where your website lives).  > Under “Your Aliases” click “phpmyadmin.”  > Next click “Databases” from the top menu.  > Enter in a name for your database and click create.

Note:  For security reasons do not use “wordpress” for your database name.  Also, if you are managing more than one site make sure the name is descriptive.

Step 5: Configure WordPress

Visit localhost again and click “Create a Configuration File.”  > Enter the name of the database you created.  > Use “root” for the username and do not enter anything in the password field.  > Leave the “Database Host” and “Table” Prefix alone.  > Click “Submit” and your browser will prompt you to install WordPress.  > Install WP as you normally would.

Watch our tutorial video below to learn how to create a local WordPress site with WAMP

Setting up a Local Development WordPress Site on your MAC with MAMPMAMP

Step 1:  Begin by downloading MAMP

Here’s the link to…  download MAMP

When the download is complete, launch the installer by double clicking the MAMP icon in your downloads folder (it may launch automatically) and run through the installation process.

Step 2:  Configure MAMP

When the installation is complete, launch MAMP from your applications folder.  > To begin, hit the “Start Servers” button.  > This turns the servers on and will automatically direct you to the admin page.  > From the admin page, select “phpMyAdmin” from the menu.  > Select the “Databases” tab and create a new database.

Note:  The database name can be what ever you like, but if you plan to manage multiple sites it should be descriptive.

Step 3:  Download and Install

Go to and download the most recent version.  > Extract the files and copy all of them (not the directory itself, just the files within) over to your MAMP server’s folder.

Note:  By default this will be located at Applications > MAMP > HTDOCS (although you can make this any destination through MAMP’s preferences.)

Fire up an internet browser and type “localhost:8888” in the bar and hit enter.  > You will receive a WordPress error.  > Don’t be alarmed this is a good error! It is looking for a wp-config file which in previous versions of WordPress you would have to manually configure by editing the PHP files.  > WordPress will create and modify the file for you.  > The process is now automated and much simpler.

Step 4:  Click “Create a Configuration File”

Follow the instructions on screen by gathering the necessary data.  > Your database name is what ever you chose. >  The username and password are both “root,” the database host is “localhost” and the table prefix is _wp.

Step 5:  Click “Let’s Go”

Most of the fields will auto-fill with the correct data.  You should only have to change the username and password.  Remember, do not make these up, they are automatically created when you create the database.  > Click “Run the Install.”

Step 6: Configure WordPress

From here it’s your standard WordPress installation.  Name your site, create a secure username, tell it your email and click install. You can access the site through any browser while your MAMP servers are running at “localhost:888” and login at “localhost:8888/wp-admin.”

Now that your WordPress site is up and running on your local machine, you’re able experiment with designs and content without negatively impacting your reputation or SEO score.  Having a local installation is also a great way to practice using and experimenting with different languages.  Try learning CSS and PHP without fear of permanently altering or possibly ruining all your hard work.  Practice makes perfect and a local installation of WordPress is the best way to build a professional site.

HostGator Web Hosting


  1. Hey Adam,

    Thanks for this post (and others). Wanted to give some feedback on loading issues I had on this walk-thru.

    1. I had to change my port # to the end of my localhost (localhost:my_different_port_number) after installing WAMP. For some reason simply using 'localhost' didn't work for me…?

    To get phpMyAdmin to work after WAMP was installed:
    1. I had to click on the WAMP icon in the system tray (icon was red)
    2. Hover over Apache
    3. Click/open the httpd.conf file
    4. Do a search for localhost & replace it with localhost:my_different_port_number
    5. Once the file was saved, I went back to the WAMP icon & clicked "Restart All Services" and the icon then went from red to orange & I could now access my localhost and the phpMyAdmin page.

    The only thing I can think is that maybe another service on my PC was using the default port# that WAMP wanted…?

    To get WP to install after I created my DB in phpMyAdmin:
    1. I had to manually create my wp-config.php file from the wp-config-sample.php file that came with the WP install…not sure why WAMP services couldn't just create this for me.
    2. I had to open the wp-config-sample.php file found in the unzipped WordPress folder found in the wamp/www/your_project_name on my local machine
    3. Save the wp-config-sample.php file as wp-config.php
    4. Manually type in my DB name from phpMyAdmin, username & password I use to log into phpMyAdmin & leave 'localhost' unchanged.

    After I saved the file with those changes I was able to get back on track & pickup with the install of WP and away I went. Having your video above as a guide of what things should look like as I went along REALLY helped me realize something on my machine wasn't right and dig in for a fix.


    • Hey Dennis,

      Thanks for the feedback and sharing your experience with us. I'm glad to hear that you were able to work through issues that came up and ultimately got it to work. I'm sure this will encourage other people out there to not give up when they run into issues and instead take a step back and work through them. Thanks again for sharing!


  2. Hi Adam!

    Thanks for the wonderful tutorials. I have relied solely on those to create my new pages. I have messed up too many times and you have shown me how to fix my issues so easily!

    So my current unsolvable issue is this: I decided to create an entirely new page on a whim so I downloaded WordPress on the site and changed the wordpress directory to gallery so that the website would be called

    As I went along everything that I created I directed to this gallery extension. Now that I want it to override my old site I'm having a lot of issues. I have had to recreate the entire page again cos of some stupid mistake I made (haven't figured that one out yet too!). When I asked my hosting providers they are simply not interested and just redirected the pages. Redirecting is great but that's not what I want. Please advise on how I should go about fixing this in the least painful way.

    My current page is The new page is

    Thanking you in advance!

    • Hi Carol,

      Just to make sure I'm following you're question let me play it back to you… So you're new WordPress / WooCommerce site is and you used the Mystile theme. The old site that you no longer want is on your main domain which is…

      So essentially, you want to take and make it simply

      Am I following you on that? If so, my recommendation would be to pay someone with experience in changing domain names to do it for you. If you go to a site like you'll most likely find someone that will do it for $5. For example, I found the following gig that would probably work well if I'm understanding your question. Here it is…

      Let me know if this helps.

  3. Hi Adam(again),

    Was watching another video of yours on how to customize the shipping page and I can't seem to make multiple fields not important to fill. I added the first bit all over and the entire page disappeared! Thank god I could edit and delete that bit from ftp. This is what it says now on the mystile child theme's function.php file

    /* All child theme functions go here
    ———————————————– */
    add_filter( 'woocommerce_billing_fields', 'wc_npr_filter_last_name', 10, 1 );

    function wc_npr_filter_last_name( $address_fields ) {
    $address_fields['billing_last_name']['required'] = false;
    return $address_fields;
    // Hook in
    add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );

    // Our hooked in function – $fields is passed via the filter!
    function custom_override_checkout_fields( $fields ) {

    return $fields;

    • Hi Carol,

      I just finished the first part of a new tutorial on an amazing plugin. The plugin extends WooCommerce and make it really easy to make customizations / modifications to the WooCommerce checkout page. The name of the plugin is… "WooCommerce Checkout Manager"

      Our first tutorial on how to use the WooCommerce Checkout Manager plugin can be viewed here…

      Let me know if this helps.

  4. Root was successful but i can not get wifi tether to run. I tried dooalwnding wifi tether 3.16 beta like someone suggested but thats not working either. Someone please help!