This installation script automatically sets up a development Docker server with DDEV and installs a WordPress site with clean defaults on that server.
Note: DDEV needs to be installed in order for the installation script to work.
- Clone this repo to your (preferably empty) project's root directory with the command:
git clone git@github.com:jacobcassidy/ddev-wp-setup-script.git
- Customize the script's configuration settings at: ddev-wp-setup-script/settings.sh
- Run the installation script in you project's root directory with the command:
ddev-wp-setup-script/install.sh
- Delete the ddev-wp-setup-script directory after successfully running the installation script
Note
The optional features can be turned on/off in the settings.sh
file.
This script automatically sets up the following:
- Configures and starts the DDEV Docker containers with a WordPress development server.
- Installs a clean WordPress site with the default pages, posts, comments, plugins, themes, welcome panel and dashboard widgets removed (with the exception of the latest official default theme as a fallback).
- (Optional) Downloads, installs, and activates the CassidyWP Starter Block Theme.
- (Optional) Installs the All-in-One WP Migration plugin.
- (Optional) Installs the All-in-One WP Migration Unlimited Extension plugin.
- The setup for this plugin is set to
false
by default since it's a paid plugin and is installed from your local machine. If you have this plugin, you can turn the installation on in thesettings.sh
file by changingINSTALL_LOCAL_AIOMUE_PLUGIN
totrue
and updating the path to your zip file.
- The setup for this plugin is set to
- (Optional) Installs the Query Monitor plugin.
- (Optional) Installs the files needed to connect the DDEV Docker containers with the Spatie Ray desktop app (used for simple debugging when Xdebug is overkill).
- (Optional) Initializes a local project Git repo and adds a
.gitignore
file configured for WordPress.
Originally, this script contained development configuration files such as prettier.config.js
and eslint.config.js
. Those configuration files have been moved to their own repo at wp-dev-config-files and can be cloned from there.
If you come across any issues, please report them here.