Getting Started
FluentCommunity is a WordPress community/forum plugin built on the WPFluent framework. This docs site is generated directly from the checked-out FluentCommunity core and Pro plugin source, so the counts, routes, hook names, and model references match the current code.
What This Site Covers
- Database layer: 21 first-party models mapped to 17 tables and shared tables.
- Hooks: 154 unique action hooks and 229 unique filter hooks found across 510 call sites in the core and Pro
app/andModules/trees. - REST API: 230 registered routes across core and Pro route files.
Development Commands
bash
yarn install
yarn docs:dev
yarn docs:buildSource of Truth
| Concern | Source |
|---|---|
| Core routes | fluent-community/app/Http/Routes/api.php |
| Pro routes | fluent-community-pro/app/Http/Routes/api.php, fluent-community-pro/app/Modules/**/Http/*_api.php, and route-bearing Pro modules |
| Controllers | fluent-community/app/Http/Controllers/, fluent-community/Modules/**/Controllers/, and the matching Pro controller trees |
| Models | fluent-community/app/Models/ plus Pro runtime models used by route responses |
| Migrations | database/Migrations/ |
| Hooks | do_action(...) and apply_filters(...) calls across the core and Pro source trees |
Authentication Notes
FluentCommunity uses WordPress REST infrastructure. In browser-driven portal flows, the plugin typically relies on cookie authentication and nonces. For server-to-server calls, WordPress Application Passwords are the most practical option for routes that are not intentionally public.
REST Client Conventions
- The REST namespace is
fluent-community/v2. - Portal clients in the plugin send PUT/PATCH/DELETE requests as POST requests with the
X-HTTP-Method-Overrideheader. - Space, admin, and portal permission checks are enforced by policy classes first and then by controller-level validation.