Configuring Live Copy

Internationalization

Configuring i18n involves configuring the locales in the site definition under <module_name>/sites/example.yaml.

  1. In the Site definition, use info.magnolia.livecopy.i18n.LiveCopyI18nContentSupport in the live copy site definition. This class processes the content of the live copy page based on the locale, programmatically retrieving the locale from the master page’s site definition.

    Before version 3.2.6, this class introduced a masterLocale property which held the fallback language from the master copy. From Live Copy 3.2.6+ masterLocale is deprecated. For older versions of Live Copy, it is still used.
  2. In the Configuration app, enable multi-language authoring in /config/server/i18n/authoring and set the class to info.magnolia.livecopy.i18n.LiveCopyMultiSiteI18nAuthoringSupport.

    Multi-language configuration

  3. If you only want to have one locale available in your live copy, delete the other locales from the live copy site definition.

    For example, if you have English and German versions in the master, but you only want the German version of the site to be available to authors in the live copy, remove the en locale folder from the live copy site definitions and set the fallback locale to de:

    image

    When the author then opens a live copy page, the language switcher does not appear at the bottom of the page and the content presented is the German version.

About locales

Locales are display languages on Magnolia instances. When you create a live copy of your page, this new page (live copy) adopts the same structure as the original (master). This means that the locales of the master site definition are used to define the structure of both the master and live copy pages. fallbackLocale defines which language is used by default from the available locales and which content is served if the content is not available for the current locale.

image

In the example above, German is used as the default locale for the master page (fallbackLocale = de). You can read the Internationalization page for more information about translated user interface texts (see examples in the table below).

Master Live copy

title = Hello world

title = Hello world

title_de = Hallo Welt

title_de = Hallo Welt

Defining fallbackLocale does not affect the structure of the live copy or the master pages. For example, defining this property as de is like stating that the content of the live copy page will be rendered in the German locale by default when first loaded.

Create live copy action

You can configure the following for the Create live copy action:

  • Parallel or sequential creation

    Allow users to create multiple live copies in parallel, or block the action (and the push changes actions) to prevent new creations once a creation operation has started. By default, live copy creation is set to run sequentially for performance reasons.

  • Child node copying

    Allow users to create live copies of child nodes even when the parent node is already being copied. By default, users can’t create live copies of child nodes if the parent node is being copied.

/livecopy/decorations/pages-app/apps/pages-app.subApps.browser.actions.yaml
createLiveCopy:
  icon: icon-livecopy_new
  class: info.magnolia.livecopy.actions.BulkLiveCopyActionDefinition
  asynchronous: true
  availability:
    writePermissionRequired: true
    root: false
    rules:
      IsLiveCopyRunningRule:
        class: info.magnolia.livecopy.app.availability.IsLiveCopyRunningRuleDefinition
        parallel: false (1)
        recursive: true (2)

The info.magnolia.livecopy.app.availability.IsLiveCopyRunningRuleDefinition action has two properties:

1 parallel, set to false by default.

Once a create live copy action starts, you can’t perform any additional creation or push changes operations until it is complete. Set to true to allow multiple live copy creation actions to run in parallel. Note that this may affect performance if many copies are created simultaneously.

2 recursive, set to true by default.

When the create live copy action is triggered for a parent node, both the node and its children are locked, making the action unavailable until the parent node live copy creation completes. Set to false to allow live copies of child nodes to be created while the operation is still running for the parent node.

Feedback

DX Core

×

Location

This widget lets you know where you are on the docs site.

You are currently perusing through the Live Copy module docs.

Main doc sections

DX Core Headless PaaS Legacy Cloud Incubator modules