---
url: 'https://dxpr.com/hc/documentation/learn-dxpr-builder/reusable-templates/importing-exporting'
title: 'Copy templates between sites | DXPR'
author:
  name: docs-sync
  url: 'https://dxpr.com/users/docs-sync'
date: '2026-10-23T14:31:17+00:00'
copyright: 'Copyright DXPR. All rights reserved.'
type: article
summary: 'Move page templates and user templates from one Drupal site to another'
tags:
  - 'Reuse layouts'
image: 'https://dxpr.com/themes/custom/dxpr_com/images/dxpr-share-card.jpg'
published: true
og:
  site_name: DXPR
  updated_time: '2026-10-23T14:31:17+0000'
  'image:alt': 'DXPR, powered by Drupal: AI-powered Drupal for marketers.'
schema:
  '@context': 'https://schema.org'
  '@graph':
    -
      mainEntity: {  }
    -
      '@type': TechArticle
      headline: 'Copy templates between sites'
      description: 'Move page templates and user templates from one Drupal site to another'
      image:
        '@type': ImageObject
        url: 'https://dxpr.com/themes/custom/dxpr_com/images/dxpr-share-card.jpg'
        width: '1200'
        height: '630'
      datePublished: '2026-10-23T14:31:17+0000'
      dateModified: '2026-10-23T14:31:17+0000'
      author:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
        url: 'https://dxpr.com/'
        logo:
          '@type': ImageObject
          url: 'https://dxpr.com/themes/custom/dxpr_com/dxpr-logo-dark.svg'
          width: '1348'
          height: '501'
      publisher:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
        url: 'https://dxpr.com/'
        logo:
          '@type': ImageObject
          url: 'https://dxpr.com/themes/custom/dxpr_com/dxpr-logo-dark.svg'
          width: '1348'
          height: '501'
      mainEntityOfPage: 'https://dxpr.com/hc/documentation/learn-dxpr-builder/reusable-templates/importing-exporting'
      articleSection: 'Reuse layouts'
    -
      '@type': WebPage
      '@id': 'https://dxpr.com/hc/documentation/learn-dxpr-builder/reusable-templates/importing-exporting'
      description: 'Move page templates and user templates from one Drupal site to another'
      breadcrumb:
        '@type': BreadcrumbList
        itemListElement:
          -
            '@type': ListItem
            position: 1
            name: Home
            item: 'https://dxpr.com/'
      publisher:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
      inLanguage: en
---
[Help Center](/hc)/[Documentation](/hc/documentation) /[Learn DXPR Builder](/hc/documentation/learn-dxpr-builder) /[Build pages](/hc/documentation/learn-dxpr-builder/build) /[Reuse layouts](/hc/documentation/learn-dxpr-builder/reusable-templates) # Copy templates between sites.

Move page templates and user templates from one Drupal site to another

 Learn DXPR BuilderBuild pagesReuse layouts

   ## In this guide

 Related guides

- [Page templates](/hc/documentation/learn-dxpr-builder/reusable-templates/page-templates)
- [Saved templates tab](/hc/documentation/learn-dxpr-builder/reusable-templates/saved-templates-tab)

Move your page templates and saved sections to another site, for example from staging to live. At the end you find them there under **Choose a template** and in the **Saved templates** tab. Both kinds are Drupal configuration. Copy them one at a time in the browser, or deploy them all with your site's configuration.

The video copies the Story page template from one site and imports it on another.

  ## Before you start

- You need the **Administer site configuration** permission on both sites.
- To copy single templates in the browser, the core **Configuration Manager** module must be enabled, and you need **Export configuration** and **Import configuration**.

## Copy one template in the browser

1. On the source site, go to **Configuration** &gt; **Development** &gt; **Configuration synchronization** and open **Export** &gt; **Single item** (`/admin/config/development/configuration/single/export`).
2. Under **Configuration type**, choose **DXPR Builder Page Template** or **DXPR Builder User Templates**.
3. Under **Configuration name**, choose the template and copy the text that appears.
4. On the target site, open **Import** &gt; **Single item** (`/admin/config/development/configuration/single/import`).
5. Choose the same **Configuration type** and paste the text into **Paste your configuration here**.
6. Click **Import** and confirm.

The copy holds the markup, the picture and, for a user template, the global setting.

## Copy by hand

No Configuration Manager? Then copy the fields one by one:

1. On the source site, open the template at **DXPR Studio** &gt; **DXPR Builder** &gt; **Page Templates** (`/admin/dxpr_studio/dxpr_builder/page_template`) or **User Templates** (`/admin/dxpr_studio/dxpr_builder/user_templates`).
2. Copy the contents of the **Template** field.
3. On the target site, click **Add page template** or **Add user template** on the same page.
4. Paste the markup into **Template** and fill in the other fields. A user template also needs a **UID**: the user ID of its owner on the target site.
5. Upload the thumbnail again under **Image**, because it is not part of the markup.
6. Click **Save**.

## Deploy all templates with the site configuration

A full configuration export holds every template, as `dxpr_builder.page_template.<id>.yml` and `dxpr_builder.user_template.<id>.yml`. If your team deploys configuration with Drush, the templates go along:

```bash
drush config:export
drush config:import

```

Run the export on the source site, commit or copy the files, and run the import on the target site.

## What you see

A page template you imported shows up in the **Layouts** dialog of an empty page. A user template shows up in the **Saved templates** tab. A global one sits under **Global Templates**; a private one shows only for its owner.

## If you don't see the template

- **An imported user template is missing from the picker.** Its **UID** belongs to a user who does not exist on the new site, and the picker skips templates without an author. Edit the template at `/admin/dxpr_studio/dxpr_builder/user_templates` and enter an existing user ID.
- **An imported page template is not in the Layouts dialog.** It is not enabled, or a user profile limits the page templates its editors may use. Tick **Enabled** on the template, then tick it under **Page templates** at `/admin/dxpr_studio/dxpr_builder/profile`.
- **Pictures inside the template are broken.** The template refers to image files in the files folder of the source site, and configuration does not copy files. Copy the files to the same folder on the new site, or pick the pictures again.

## What's next?

- [Start a page from a template](/hc/documentation/learn-dxpr-builder/reusable-templates/page-templates): use the imported layouts.
- [Find and insert a saved template](/hc/documentation/learn-dxpr-builder/reusable-templates/saved-templates-tab): use the imported sections.