30 days free. No credit card. Full access from the moment you connect your site.

Start free trial

LearnDash Convert To Builder

learndash/convert-certificate-to-builder converts a legacy certificate template to a Certificate Builder one. It requires confirm_title matching the template.

Conversion means emptying, not translating.

Before you run it

The entire legacy body is replaced by an empty builder template. The old content is backed up to the ld_certificate_builder_old_content meta first, and that backup is the only way to recover it — nothing in the LearnDash interface exposes it. A background image is needed for the result to be viewable, so pass background_attachment_id or set one immediately afterwards.

At a glance

Abilitylearndash/convert-certificate-to-builder
ToolsetLearnDash — toolset/learndash
GroupLearnDash › Certificates
RequiresAcrossAI Pro, plus LearnDash LMS active on the site
Capabilitymanage_options
SafetyDestructive — replaces the legacy body with an empty builder template. Requires confirm_title.
RepeatableNot idempotent — each call changes the row set, so re-running is not a no-op
Ships inAcrossAI Pro 0.9.16 and later

How it works

The two formats are not compatible enough to translate between. A legacy template is shortcode-driven markup; a builder template is blocks. So the conversion produces an empty builder template rather than an approximation of the old design.

The old content is written to the ld_certificate_builder_old_content meta first. That is the only copy, and nothing in the LearnDash interface shows it — recovering the design means reading that meta directly.

A background image is required for the result to be viewable at all, because Certificate Builder hard-fails without one. Passing background_attachment_id here avoids a window where the template is broken.

Already-converted templates are refused rather than re-emptied, which protects against a retry destroying a design that was rebuilt after the first conversion.

The template stays assigned to whatever was using it throughout, so learners completing during the rebuild get an empty or broken certificate. Unassign it first if that matters.

Not idempotent.

Input

NameTypeRequiredWhat it is
certificate_idintegerYesThe legacy template.
confirm_titlestringYesMust exactly match the current title on the live record.
background_attachment_idintegerNoSet the background at the same time, so the result is viewable.
confirmbooleanYes — must be trueThe irreversibility gate. Without it the call is refused before anything is touched.

What comes back

NameTypeWhat it is
certificate_idintegerThe template converted.
backup_meta_keystringWhere the old content was stored.
successbooleanWhether the call completed.
messagestringA one-line summary of what happened, suitable for showing a human.
error_codestringPresent only on failure — a stable machine-readable reason, such as a missing field, a wrong field type or an unmet confirmation.

Example

Ask your assistant:

Convert that old certificate to the builder format.

It resolves to one call:

{
  "ability": "learndash/convert-certificate-to-builder",
  "parameters": {
    "certificate_id": 810,
    "confirm_title": "Course completion certificate",
    "background_attachment_id": 2201
  }
}

Worth knowing

  • The formats do not translate. The result is empty, not approximated.
  • The backup lives in meta and nothing in the interface shows it.
  • Already-converted templates are refused, so a retry cannot destroy a rebuild.
  • The template stays assigned during the rebuild.

Related abilities


Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager

Browse the rest: Every ability, by category


Keep reading