Multi-Site Strategy
One system, many sites
SCS is not tied to a fixed list of sites. A site is a row in
config/sites.csv; a workspace is a content program. The registry is the only
source of truth.
scs sites
scs add-site client-site --domain client.example --prefix CLI --name "Client Site"
| Concept | Scope |
|---|---|
site_id | A target domain and its WordPress connection |
prefix | PID prefix, unique per site (FS, OPS, BSP, MX, ID, …) |
workspace | A content program under data/<workspace>/ |
A workspace can contain rows for more than one site; site_id on each row keeps
ownership clear.
Onboarding a new site
-
Register it with
scs add-siteand a unique 2–4 character prefix. -
Inspect WordPress before enabling publishing:
scs wp inspect --workspace <ws> --site <site_id> -
Confirm the contract: ACF fields,
content_formatterms, authority topics, and the review-gate plugin. See WordPress Contract. -
Import keyword data from whatever SEO tool you use.
-
Plan the cluster in
clusters.csv. -
Run the gates exactly as on the first site.
Do not assume another site shares the pilot's plugins, taxonomies, or ACF field names. Inspect first; enable the publish bridge only after the contract matches.
PID prefixes
Prefixes are unique per site and are stored in config/sites.csv. SCS allocates
<PREFIX>-<NNNN> IDs and never reuses a number. Existing content keeps its PID
even if the site's name or domain changes.
Operating multiple sites
- Filter by
site_idinkeywords.csvto focus on one site. - Keep one workspace per content program, not necessarily one per site.
- Use
scs check(all workspaces) before a weekly review. - Track performance per workspace in
<workspace>-performance.csv. - Register credentials and connection fields in
config/sites.csv; never in Markdown or CSV content rows.
Deployment notes
The docs and the SCS data are separate concerns:
- SCS data lives in
server-side-program/scs/data/. - These docs live in
brain-donnyaw-cf-pages/seo-content-systems/. - WordPress connection fields live in
config/sites.csvon the machine that runs the bridge.