Website · Documentation · WordPress.org · GitHub
ContentLatch is a WordPress plugin for content governance and validation. Administrators define rules for WordPress Core fields and optional Advanced Custom Fields (ACF) fields. ContentLatch evaluates those rules when editors save or publish, and can audit existing published and private content.
It is not an AI tool, SEO scanner, malware scanner, spell checker, or content generator. It enforces the rules you configure.
- WHEN / THEN rules — Optional conditions (WHEN) and validations (THEN), including condition-only rules
- WordPress Core fields — Title, Content, Excerpt, Slug, Featured Image, and Author
- Optional ACF support — Supported scalar types plus Group; Repeater, Flexible Content, and Clone with ACF Pro (see documentation for limits)
- Save-time validation — Classic Editor and block editor on supported Core and ACF save paths
- Blocking and Warning severity — Blocking can prevent publish / published-or-private updates; Warnings notify without blocking
- Content Audit — Batch evaluation of existing published and private content, with findings and Repeater row context
- On-site only — Rules, validation, and audits run on your WordPress site; the plugin does not send plugin data to external services
For supported operators, validators, field limits, and unsupported ACF types, see readme.txt or the documentation.
- WordPress 6.6 or newer
- PHP 8.1 or newer
- Advanced Custom Fields 6.0+ (Free or Pro) only for ACF field validation
- ACF Pro for Repeater, Flexible Content, and Clone
WordPress Core field validation works without ACF.
The recommended way to install ContentLatch is from WordPress.org:
- In WordPress Admin, go to Plugins → Add New.
- Search for ContentLatch, then install and activate it.
- For ACF field validation, install and activate Advanced Custom Fields 6.0 or higher (Free or Pro, as needed for your field types).
Manual alternative: upload a plugin ZIP via Plugins → Add New → Upload Plugin, or place the plugin folder at /wp-content/plugins/contentlatch, then activate ContentLatch.
Full installation notes: Installation documentation.
- Open ContentLatch → Rules in the WordPress admin.
- Choose Add New Rule and select a post type.
- Optionally add WHEN conditions and THEN validations (at least one of either is required).
- Choose Blocking or Warning severity, save, and keep the rule active.
- Edit a matching post and try publishing to confirm the rule behaves as expected.
Detailed walkthroughs: Creating Your First Rule and the documentation index.
composer install
composer testcomposer installinstalls PHPUnit and generates the Composer autoloader.composer testruns the PHPUnit suite intests/Unit(seephpunit.xml.dist).- Domain unit tests run without WordPress or ACF.
tests/bootstrap.phpprovides a minimal stub environment for other unit tests. - Production ZIPs exclude development files listed in
.distignore.
Architecture note: the rule engine lives in includes/Domain and has no WordPress, ACF, or database dependencies. WordPress and ACF adapters live under includes/Infrastructure.
Contributor setup, branching, and pull request expectations: CONTRIBUTING.md.
See SECURITY.md for supported versions and reporting guidance.
Report security vulnerabilities through GitHub private vulnerability reporting. Do not disclose vulnerabilities in public Issues or Discussions.
ContentLatch is licensed under GPL-2.0-or-later.