Add reference docs for WordPress Multisite and npm projects in DDEV#5
Add reference docs for WordPress Multisite and npm projects in DDEV#5JUVOJustin merged 2 commits intomainfrom
Conversation
Replace the generic commands.md with two focused reference files: - wordpress-multisite.md: Multisite setup with subdomains, different hostnames, and subdirectories including WP-CLI search-replace workflows - npm-projects.md: Running Node.js dev servers in DDEV with port exposure, host binding, and examples for Vite, Next.js, and Astro Simplify SKILL.md CLI section and update resource listings.
There was a problem hiding this comment.
Pull request overview
This PR restructures the DDEV skill documentation by replacing a generic command reference with two task-focused reference guides (WordPress Multisite and npm/Node dev servers) and simplifying the CLI guidance in SKILL.md.
Changes:
- Added a WordPress Multisite reference covering hostname patterns and WP-CLI workflows.
- Added an npm/Node.js reference covering dev server port exposure, host binding, and examples (Vite/Next.js/Astro).
- Removed
commands.mdand updatedSKILL.mdto point users toddev helpand clarify whenddev exec --diris actually needed.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| skills/ddev/references/wordpress-multisite.md | New Multisite setup reference + WP-CLI verification and troubleshooting commands. |
| skills/ddev/references/npm-projects.md | New Node dev-server reference with DDEV port/daemon configuration and framework examples. |
| skills/ddev/references/commands.md | Removed the generic DDEV command reference. |
| skills/ddev/SKILL.md | Updated CLI guidance to reduce reliance on --dir and refreshed reference links/listings. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| | Use yarn | `ddev yarn dev` | | ||
| | Check Node.js version | `ddev exec node -v` | | ||
| | View dev server logs | `ddev logs -s web` | | ||
| | Kill stuck process | `ddev exec "pkill -f node"` | |
There was a problem hiding this comment.
ddev exec "pkill -f node" will likely be treated as a single argv token (including the space), so the command won’t be found/executed. Use ddev exec pkill -f node (or ddev exec bash -c "pkill -f node" if you need shell features) to ensure it runs correctly inside the container.
| | Kill stuck process | `ddev exec "pkill -f node"` | | |
| | Kill stuck process | `ddev exec pkill -f node` | |
| | Table | Field | Format | Subdomain Example | Different Hostname Example | Subdirectory Example | | ||
| |-------|-------|--------|-------------------|---------------------------|---------------------| | ||
| | `wp_site` | `domain` | No protocol, no trailing `/` | `my-project.ddev.site` | `my-project.ddev.site` | `my-project.ddev.site` | | ||
| | `wp_sitemeta` | `siteurl` | With protocol and trailing `/` | `https://my-project.ddev.site/` | `https://my-project.ddev.site/` | `https://my-project.ddev.site/` | |
There was a problem hiding this comment.
In wp_sitemeta, siteurl is not a column/field; it’s typically a meta_key whose value lives in meta_value. The table currently implies editing a siteurl field directly, which is misleading—consider documenting the correct column (meta_value) and the key filter (meta_key = 'siteurl').
| | `wp_sitemeta` | `siteurl` | With protocol and trailing `/` | `https://my-project.ddev.site/` | `https://my-project.ddev.site/` | `https://my-project.ddev.site/` | | |
| | `wp_sitemeta` | `meta_value` (where `meta_key` = `siteurl`) | With protocol and trailing `/` | `https://my-project.ddev.site/` | `https://my-project.ddev.site/` | `https://my-project.ddev.site/` | |
| | `wp_options` | `siteurl`, `home` | With protocol, no trailing `/` | `https://my-project.ddev.site` | `https://my-project.ddev.site` | `https://my-project.ddev.site` | | ||
| | `wp_#_options` | `siteurl`, `home` | With protocol, no trailing `/` | `https://blog.my-project.ddev.site` | `https://site1.ddev.site` | `https://my-project.ddev.site` | |
There was a problem hiding this comment.
Similarly, in wp_options (and each wp_#_options), siteurl/home are option_name values and the URL is stored in option_value. The table reads like siteurl/home are columns; updating the doc to reference option_value plus the option_name filter would prevent incorrect manual edits.
| | `wp_options` | `siteurl`, `home` | With protocol, no trailing `/` | `https://my-project.ddev.site` | `https://my-project.ddev.site` | `https://my-project.ddev.site` | | |
| | `wp_#_options` | `siteurl`, `home` | With protocol, no trailing `/` | `https://blog.my-project.ddev.site` | `https://site1.ddev.site` | `https://my-project.ddev.site` | | |
| | `wp_options` | `option_value` (where `option_name` = 'siteurl' or 'home') | With protocol, no trailing `/` | `https://my-project.ddev.site` | `https://my-project.ddev.site` | `https://my-project.ddev.site` | | |
| | `wp_#_options` | `option_value` (where `option_name` = 'siteurl' or 'home') | With protocol, no trailing `/` | `https://blog.my-project.ddev.site` | `https://site1.ddev.site` | `https://my-project.ddev.site` | |
Replace the generic commands.md with two focused reference files:
Simplify SKILL.md CLI section and update resource listings.