You are viewing beta documentation for Hyper 3.x.
Migrations & Upgrades

Migrating from Craft Link

Craft 5.3+ ships a native Link (opens new window) field. Hyper can convert those fields and their content.

Control Panel

  1. Backup your database and project config.
  2. In an environment with allowAdminChanges enabled, open Hyper → Settings → Migrations → Craft Link.
  3. Run Migrate Fields, then deploy the resulting project config.
  4. On each environment, run Migrate Content (re-runnable). Content migration syncs hyper_links relations by default.

Console

php craft hyper/migrate/craft-link --step=field
php craft hyper/migrate/craft-link --step=content

# Preview content conversion without writing
php craft hyper/migrate/craft-link --step=content --dry-run=1

What gets mapped

Craft typeHyper type
Entry / Asset / CategorySame
URLURL
EmailEmail
Phone / TelPhone
SMSURL (sms: values preserved)
Product (when present)Product

Label, URL suffix, title, classes, aria-label, and _blank target map onto Hyper’s native link fields when those advanced options were enabled on the Craft field.

Notes

  • Element link values stored as {craft\elements\Entry:123@1} are parsed into Hyper element IDs + site.
  • Unknown Craft link types can be remapped with PluginMigration::EVENT_MODIFY_LINK_TYPE (same event as Linkit / Typed Link).
  • Source Craft Link fields are converted in place to Hyper fields (type + settings). Content JSON is rewritten on the content step.