Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
- **trellis/** - Trellis-specific: `backup/`, `monitoring/`, `updater/`
- **wp-cli/** - WordPress CLI tools: `content-creation/`, `diagnostics/`, `migration/`
- **scripts/** - Utilities: `backup/`, `monitoring/`, `git/create-pr.sh`, `sync/rsync-theme.sh`
- **docs/** - Design docs at the top level; guides in subdirectories: `nginx/` (server configs), `bedrock/` (Composer workflows), `wordpress-utilities/` (copy-paste components)
- **docs/** - Design docs at the top level; guides in subdirectories: `nginx/` (Trellis include templates), `bedrock/` (the standard `wp-cli.yml`)
- **Root docs**: `README.md`, `CLAUDE.md`, `CREATE-PR.md`, `AGENTS.md`, `CHANGELOG.md`, `LICENSE.md`
- Keep new tools self-contained: add to appropriate category with a concise `README.md` and example configs.

Expand Down
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Removed

- **The Bedrock guides, the WP-CLI snippets and the speed-optimization pointer**, now four posts on wpvilla.in: [testing an unreleased plugin with a Composer path repository](https://wpvilla.in/bedrock-composer-path-repository-test-plugin-before-release-symlink-false/), [the standard `wp-cli.yml` and `pattern-validate`](https://wpvilla.in/bedrock-wp-cli-yml-and-pattern-validate-block-pattern-files/), [a frozen Site Editor template override](https://wpvilla.in/wordpress-block-template-frozen-site-editor-database-override-wp-cli/) and [creating a temporary admin when locked out](https://wpvilla.in/wordpress-locked-out-emergency-admin-user-wp-cli-ssh/); TTFB measuring was already [a post](https://wpvilla.in/measure-wordpress-ttfb-curl-wget-user-agents/). `docs/wordpress-utilities/` is gone entirely, as are the two READMEs under `docs/bedrock/`; `wp-cli.yml` stays with a header linking its post. The old admin-user guide gave 16-character passwords "~95 bits"; `openssl rand -base64 16` is 128 bits of randomness, and the post says so.
- **The Nginx guides**, now two new posts and one existing post on wpvilla.in: [serving WebP and AVIF through Accept-header negotiation](https://wpvilla.in/serve-webp-avif-nginx-trellis-accept-header-bedrock-uploads/), [browser caching headers as a global include](https://wpvilla.in/nginx-browser-caching-headers-trellis-all-includes-expires/) and [the redirect provision tag and query string](https://wpvilla.in/trellis-nginx-redirect-not-deployed-query-string-dropped/). The four READMEs under `docs/nginx/` are gone; the `.conf.j2` templates stay, and each now opens with a link to its post. The WebP/AVIF template is now `docs/nginx/image-optimization/nginx-includes/all/00-webp-avif.conf.j2`, rewritten after testing it against Nginx: the old file failed `nginx -t` as a site include (`map` is not allowed in a server block), served `photo.webp` instead of the documented `photo.jpg.webp`, and lost to the caching include's image block. It is now a global include that loads first, uses `set`/`if` instead of `map`, and sets its own expiry; rename existing `photo.webp` files to `photo.jpg.webp`. Site includes live in a folder named after the site key; the guides' `nginx_includes` setting does not exist. The browser caching guide had documented 30-day and 7-day durations while the template sets one year; the post describes the template. The generic redirect best-practice and rollback sections are not carried over.
- **The troubleshooting guides**, now covered on wpvilla.in: [PHP-FPM memory exhaustion](https://wpvilla.in/debugging-php-fpm-memory-exhaustion-wordpress-woocommerce-trellis/), [mail that never arrives or bounces](https://wpvilla.in/trellis-mail-not-sending-smtp-config-reset-and-bounces/), [the MariaDB failure at "Set root user password"](https://wpvilla.in/trellis-provision-set-root-user-password-fails-mariadb-provider-plugins/) and a new post on [the OOM killer, cron and the unlimited PHP CLI memory limit](https://wpvilla.in/linux-oom-killer-wordpress-cron-php-cli-memory-limit-trellis/). `docs/troubleshooting/` is gone, and the README, `AGENTS.md` and `CLAUDE.md` no longer point at it. The generic MariaDB diagnostics and the PHP-FPM sizing tables are not carried over; they stay in git history.
- **The security guides**, now four posts on wpvilla.in: [the two scanners and checksum verification](https://wpvilla.in/wordpress-malware-scanners-targeted-general-checksum-verification/), [reading scan results](https://wpvilla.in/reading-malware-scan-results-false-positives-wordpress-hardening/), [a permanent Nginx deny list](https://wpvilla.in/nginx-deny-list-trellis-cidr-whitelist-self-lockout/) and [a Trellis security routine](https://wpvilla.in/trellis-wordpress-security-routine-abuseipdb-fail2ban/), plus the existing [fail2ban post](https://wpvilla.in/fail2ban-wordpress-wp-login-trellis-nginx-deny-list/). The `README`, `SECURITY-GUIDE` and `SCANNER-SUMMARY` guides in `wp-cli/security/` and the `README`, `FAIL2BAN` and `MANUAL-IP-BLOCKING` guides in `trellis/security/` are gone; the scanners and the AbuseIPDB scripts stay. The scanner wrapper's closing hint now names the post.
Expand Down
3 changes: 1 addition & 2 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,7 @@ This is a collection of tools, scripts, and documentation for WordPress operatio
- `docs/dev/` - Design and planning docs for wp-ops itself. New ones go here, not at the `docs/` top level
- `docs/cli/` - How the `wp-ops` binary works: usage reference (categories, platforms, completion, guide search) and the trellis-cli plugin
- `docs/nginx/` - Web server configs: `browser-caching/`, `image-optimization/`, `redirects/` (the `.conf.j2` templates; each header links its wpvilla.in post)
- `docs/bedrock/` - Bedrock/Composer workflows: local package development, and the standard `wp-cli.yml` for Bedrock path setup
- `docs/wordpress-utilities/` - Copy-paste-into-a-project components and reference material: `snippets/`, `speed-optimization/`
- `docs/bedrock/` - The standard `wp-cli.yml` for Bedrock path setup (its header links the wpvilla.in post)

## Key Technologies

Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -135,8 +135,8 @@ sites are run with:
| **Security** | Malware scanners with checksum verification, fail2ban, manual IP blocking, AbuseIPDB lookup | [routine](https://wpvilla.in/trellis-wordpress-security-routine-abuseipdb-fail2ban/) · [scanners](https://wpvilla.in/wordpress-malware-scanners-targeted-general-checksum-verification/) |
| **Content & SEO** | Page creation, block pattern validation, redirect/schema/orphan-page audits | [SEO](wp-cli/seo/README.md) |
| **Nginx** | WebP/AVIF serving, browser caching and redirect templates for Trellis `nginx-includes/` [images](https://wpvilla.in/serve-webp-avif-nginx-trellis-accept-header-bedrock-uploads/) · [caching](https://wpvilla.in/nginx-browser-caching-headers-trellis-all-includes-expires/) · [redirects](https://wpvilla.in/trellis-nginx-redirect-not-deployed-query-string-dropped/) |
| **Bedrock** | Testing unreleased packages via Composer `path` repos, standard `wp-cli.yml` | [packages](docs/bedrock/local-package-development/README.md) · [wp-cli.yml](docs/bedrock/wp-cli-config/README.md) |
| **Scripts & guides** | Theme sync, PR helpers, WP-CLI snippets for Bedrock | [scripts](scripts/README.md) · [snippets](docs/wordpress-utilities/snippets/README.md) |
| **Bedrock** | Testing unreleased packages via Composer `path` repos, standard `wp-cli.yml` | [packages](https://wpvilla.in/bedrock-composer-path-repository-test-plugin-before-release-symlink-false/) · [wp-cli.yml](https://wpvilla.in/bedrock-wp-cli-yml-and-pattern-validate-block-pattern-files/) |
| **Scripts** | Theme sync, PR helpers, emergency admin creation | [scripts](scripts/README.md) · [admin recovery](https://wpvilla.in/wordpress-locked-out-emergency-admin-user-wp-cli-ssh/) |

## Requirements

Expand Down
13 changes: 0 additions & 13 deletions docs/bedrock/README.md

This file was deleted.

184 changes: 0 additions & 184 deletions docs/bedrock/local-package-development/README.md

This file was deleted.

137 changes: 0 additions & 137 deletions docs/bedrock/wp-cli-config/README.md

This file was deleted.

3 changes: 3 additions & 0 deletions docs/bedrock/wp-cli-config/wp-cli.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
# Standard wp-cli.yml for a Bedrock site root (next to composer.json).
# Guide: https://wpvilla.in/bedrock-wp-cli-yml-and-pattern-validate-block-pattern-files/
# The require line loads wp-cli/content-creation/wp-cli-pattern-validate.php; copy that file next to this one, or drop the line.
path: web/wp
server:
docroot: web
Expand Down
Loading
Loading