CMS Patches

How SitePulse auto-applies and manually applies approved rewrite suggestions to WordPress, Webflow, and Drupal via CMS integrations.

Once you approve rewrite suggestions, SitePulse can push those changes directly to your CMS. This page explains how the patching system works — what's auto-applied, what requires manual action, and how suggestion types map to CMS fields.

Two tiers of patching

TierBehaviorExample types
Auto-applyPatch is sent directly to the CMS API without additional confirmationtitle, meta_description, image_alt, structured_data
ManualPatch is shown as a diff you must confirm before sendingheading_h1, faq_schema, howto_schema, content_suggestion, paragraph_split

Auto-apply is used for metadata fields that have a single canonical CMS field (e.g. Yoast SEO title in WordPress) and low risk of breaking page layout. Manual apply is used for content body fields where the change is more extensive or the field mapping is ambiguous.

How to enable CMS patching

CMS patching requires a CMS integration on the project. Go to Project Settings → Integrations and connect your CMS:

Once a CMS is connected, approved suggestions automatically appear in the CMS Patches tab of the audit detail page.

Suggestion type → CMS field mapping

The table below shows which suggestion types are supported for each CMS and what field they map to.

WordPress

Suggestion typeCMS fieldAuto/Manual
titleYoast _yoast_wpseo_title (falls back to post_title)Auto
meta_descriptionYoast _yoast_wpseo_metadescAuto
image_altwp_update_attachment_metadata alt fieldAuto
structured_dataYoast _yoast_wpseo_schema_* or injected <script type="application/ld+json">Auto
heading_h1post_title (for post title H1)Manual
faq_schemaInjected JSON-LD in post contentManual
howto_schemaInjected JSON-LD in post contentManual
content_suggestionpost_contentManual
paragraph_splitpost_contentManual

Webflow

Suggestion typeCMS fieldAuto/Manual
titleseo-title field on CMS itemAuto
meta_descriptionseo-description field on CMS itemAuto
image_altalt field on image field typeAuto
structured_dataDesigner-side custom code (requires manual embed)Manual
heading_h1name field (slug name) or richtext bodyManual
faq_schemaDesigner-side custom codeManual
content_suggestionRich text body fieldManual

Drupal

Suggestion typeCMS fieldAuto/Manual
titlefield_meta_tags (Metatag module) or title fieldAuto
meta_descriptionfield_meta_tags descriptionAuto
image_altfield_image[alt]Auto
structured_dataSchema.org module field or custom fieldAuto
heading_h1title fieldManual
faq_schemaBody field or dedicated FAQ fieldManual
content_suggestionbody or long text fieldManual

Applicable: false cases

Some suggestion types cannot be auto-applied through the CMS API for structural reasons:

  • reading_level_fix, language_simplification, unique_phrasing — these require rewriting body content inline, which requires parsing the CMS rich text field and preserving formatting. Currently manual-only.
  • brand_voice_fix — brand voice edits require human judgment about tone; always manual.
  • keyword_optimization — keyword changes in headings require editorial review; always manual.
  • link_text — link text changes require finding the specific anchor within the body HTML; manual.

These suggestion types appear in the Rewrites tab but do not appear in the CMS Patches tab. You must copy the suggested text and apply it manually in your CMS editor.

Patch confirmation

For manual-tier patches, the CMS Patches tab shows:

  1. Suggestion type and which field will be updated
  2. Diff view — the existing field value (red) vs the proposed value (green)
  3. Confirm button — sends the patch to the CMS API
  4. Skip button — dismisses this patch without applying it

After confirmation, the patch status changes from pending_patch → patched. If the CMS API returns an error, the status changes to patch_failed with the error message shown inline.

Deepcopy-safe persistence

CMS patch payloads are stored in the AuditResult JSONB details field and are safe to serialize and reload across sessions. Each patch record is a standalone object (no references to mutable state), so approved suggestions survive page reloads and can be re-reviewed at any time.

What happens if no CMS is connected?

If no CMS integration is configured on the project, the CMS Patches tab shows a "Connect a CMS" prompt. Rewrite suggestions still work — you can approve and review them — but no patch is sent. You can copy the suggested text from the suggestion card and apply it manually.

Webflow structured data limitation

Webflow's CMS API does not support injecting arbitrary <script> tags into page head or body via the API. For structured data (faq_schema, howto_schema, structured_data) on Webflow sites, the patch shows you the JSON-LD block to copy, and you add it via a Designer embed element. This is a Webflow platform limitation, not a SitePulse one.

Last updated: 2026-05-13