WordPress on Localhost

Running WordPress locally allows you to develop themes, test plugins, and build websites without a live server. Use tools like XAMPP, MAMP, Local by Flywheel, or Docker to create your local WordPress environment.

Access local WordPress: http://localhost/wordpress

Methods to Run WordPress Locally

ToolPlatformBest For
XAMPPWindows, Mac, LinuxTraditional setup, full control
MAMPMac, WindowsMac users, simple setup
Local (Flywheel)Windows, MacEasiest, WordPress-specific
Docker + wp-envAll platformsDevelopers, isolated environments
LaragonWindowsFast, portable, modern

Install WordPress with XAMPP

  1. Install XAMPP — Download from apachefriends.org
  2. Start Apache & MySQL — From XAMPP Control Panel
  3. Download WordPress — From wordpress.org
  4. Extract to htdocsC:\xampp\htdocs\wordpress
  5. Create Database — Open phpMyAdmin, create database named wordpress
  6. Run Install — Visit http://localhost/wordpress
  7. Enter Details:
    • Database: wordpress
    • Username: root
    • Password: (blank for XAMPP)
    • Host: localhost
  8. Complete Setup — Set site title, admin username/password

Install with Local by Flywheel (Easiest)

  1. Download Local from localwp.com
  2. Install and open Local
  3. Click Create a new site
  4. Enter site name (e.g., "mysite")
  5. Choose environment (Preferred is fine)
  6. Set WordPress username/password
  7. Click Add Site
  8. Access at mysite.local

WordPress wp-config.php for Localhost

// Database settings for XAMPP
define('DB_NAME', 'wordpress');
define('DB_USER', 'root');
define('DB_PASSWORD', '');
define('DB_HOST', 'localhost');

// Enable debug mode for development
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

// Disable auto-updates locally
define('AUTOMATIC_UPDATER_DISABLED', true);

WordPress CLI (WP-CLI)

# Install WordPress via CLI
wp core download
wp config create --dbname=wordpress --dbuser=root --dbpass=
wp db create
wp core install --url=localhost/wordpress --title="My Site" \
    --admin_user=admin --admin_password=password --admin_email=admin@local.test

# Common commands
wp plugin install woocommerce --activate
wp theme install flavor flavor2 flavor3
wp user create editor editor@local.test --role=editor
wp db export backup.sql

Common Local URLs

URLPurpose
/wp-adminAdmin dashboard
/wp-login.phpLogin page
/wp-content/themes/Theme files
/wp-content/plugins/Plugin files

Troubleshooting

ProblemSolution
Error establishing database connectionCheck DB credentials in wp-config.php
White screen of deathEnable WP_DEBUG to see errors
Permalinks not workingEnable mod_rewrite, check .htaccess
Can't upload mediaCheck folder permissions on wp-content/uploads