A shell script to automate the creation and configuration of WordPress development environments using DDEV.
- Interactive project setup with input validation
- Configurable PHP version
- Optional Adminer database management addon
- Automated WordPress core installation
- Theme and plugin management (removes default themes/plugins, installs Twenty Twenty-Five)
- Configurable WordPress settings:
- Security configurations (disable file editing, automatic updates)
- Performance optimizations (script/CSS compression, GZIP)
- Timezone and date settings
- Discussion and comment settings
- Permalink structure
- Optional theme unit test data import
- Optional automatic snapshots on project stop
- HTTPS configuration
- DDEV installed and working
- Shell environment (bash, sh, zsh, etc.)
./automate-ddev.shFollow the interactive prompts to configure your WordPress project:
- Project name - Letters, numbers, and hyphens only
- PHP version - Leave blank for default or specify a version
- Adminer addon - Database management tool (default: Yes)
- Snapshot on stop - Automatic backups when stopping the project (default: No)
- Site title - Display name for your WordPress site
- Admin username - WordPress administrator username
- Admin password - WordPress administrator password (default: password)
- Change WordPress options - Apply preferred WordPress settings (default: Yes)
- Change page settings - Configure default pages and posts (default: Yes)
- Install test data - Import WordPress theme unit test data (default: No)
- Automatic updates disabled
- File editing disabled in dashboard
- Script and CSS compression enabled
- GZIP compression enabled
- Memory limit: 256M
- Environment type: development
- Timezone: America/New_York
- Week starts on: Sunday
- RSS uses excerpts
- Search engine visibility: discouraged
- Pingbacks: disabled
- Comments: closed by default, moderation required
- Permalinks:
/%postname%/
- Creates "Home" and "Articles" pages
- Sets Home as front page and Articles as posts page
- Renames "Uncategorized" category to "General"
- Renames default privacy policy page
- Admin email:
admin@{projectname}.site - Admin password:
password(configurable during setup)
After successful setup, the script automatically launches the WordPress admin dashboard at:
https://{projectname}.ddev.site/wp-admin/
- Add more options for the WordPress installation
- All-in-one DDEV management functionality
This project is provided as-is for development purposes.