Skip to content

Editor Import & Export

Built something great on staging and need it on production? The Hyvä CMS Import/Export moves content between environments and copies content structures, so you never have to rebuild a page by hand.

It gives you two ways to move content:

  • ZIP transfer packages for moving one or more content items along with their related data.
  • JSON import and export for quickly copying the current content item's component structure.

Accessing the Import & Export Feature

Open the Hyvä CMS editor menu from the Hyvä logo in the top-left of the editor, then choose the import/export option.

Accessing Import and Export

ZIP Export

Use ZIP export when moving Hyvä CMS content between environments, for example from staging to production.

Export can include:

  • CMS pages
  • CMS blocks
  • Product attribute content
  • Category attribute content
  • Instance components
  • Templates
  • Snippets
  • Media files referenced by the content
  • Store-view translations
  • Version history

The available content types are not fixed. Each type is provided by a handler, and third-party modules can register their own (see For Developers below). Templates and snippets, for example, are contributed by the Hyva_CmsTemplate module rather than the import/export module itself.

In the export tab, select a content type, search for entities, and add one or more items to the package.

Only Hyvä CMS content is exportable

CMS pages and CMS blocks only appear in the export picker when they actually carry Hyvä CMS content. Pages and blocks that were never edited in the Liveview Editor are hidden from selection, and a direct export attempt is rejected server-side. This keeps non-Hyvä content out of transfer packages.

Export options include:

  • Images: include referenced media files.
  • Translations: include store-view translation CSV data.
  • History: include version history.
  • Components: include referenced instance components.

The ZIP contains a manifest.json, per-entity settings and content JSON, optional translation CSV files, and media files under an images directory.

ZIP Import

Use ZIP import to restore or transfer a package created by the Import & Export feature. Drag a .zip file into the import tab and choose the import behavior.

Import options include:

  • Images: import package media files.
  • Translations: import translation data.
  • History: import version history.
  • Components: import instance component definitions.

Import behavior:

  • Replace: overwrite matching content by identifier.
  • Import as new: create a copy where the content type supports it.

CMS pages, CMS blocks, and instance components can be imported as new with generated copy identifiers. Product and category attribute content cannot be imported as new because the target product or category must already exist.

Product and Category Attribute Transfers

Catalog attribute transfers are portable, but they do not create catalog entities.

  • Product content is matched by SKU.
  • Category content is matched by URL path.
  • Attribute IDs are normalized to attribute codes.
  • Product, category, CMS page, and CMS block links are normalized to portable identifiers where possible.

If a referenced entity cannot be found in the target environment, the import keeps the original value where possible and reports a warning.

Transferring Instance Components

If content uses instance/... components, include components in the export. During import, Hyvä CMS imports instance components before importing the content that references them.

When importing as new, conflicting instance component identifiers can be remapped and matching component references inside imported content are updated.

Transferring Media Files

The Import & Export feature can include referenced media files. During import, existing media files are not overwritten.

Supported media extensions include common image, video, document, and font formats such as jpg, jpeg, png, gif, webp, svg, avif, ico, mp4, webm, mov, pdf, woff, woff2, ttf, and otf.

JSON Import and Export

The JSON tab is for the current content item only.

  • Export JSON copies the current draft component structure.
  • Import JSON replaces the current draft component structure with the pasted JSON.

Use JSON for quick copying, debugging, or moving a single structure manually. Use ZIP transfer when you need media, translations, history, related instance components, or multiple entities.

JSON import replaces the current draft

Importing JSON into the current editor item overwrites that item's draft component structure. Save or export the current draft first if you need a backup.

For Developers

The Import/Export is handler-driven, so any module can make its own content type importable and exportable without touching the Import/Export module itself. See Step 12: Register with Import/Export in Extending for Other Content Types.