Skip to content

Reusable content #1264

@bgilhome-now

Description

@bgilhome-now

Describe the feature

Reusable content (via the Paragraphs Library module in Tide) - such that e.g. an instance of a Basic Text component can be created once & placed on multiple landing pages without having to create duplicate components.

The current functionality for reusable content is limited to campaigns and image galleries. There is arguably a common use case for reusable content components of any type (or at the least, the Basic Text type).

Motivation

The content required for the EPA site includes pages specifying fees and regulations relating to various types of permits. Between the ~50 permit types, much of the fee and other regulatory information is the same. It would be laborious and open to human error to create & maintain this information as individual Basic Text instances - the preferable approach would be to create a reusable paragraph that could be placed on multiple pages. Then, if the shared information needed to be updated, it could be edited in one place, and updated automatically wherever it is used.

This kind of use case is very likely not limited to EPA, but a common one across other projects (new or existing).

Proposal

The paragraphs_library module can be enabled on the backend to provide the required editing UX functionality. Any paragraph type can be configured as 'Reusable', enabling editors to create a library of reusable items of those types which editors can place on any landing page.

Reusable paragraphs can be included in the JSON:API's response for a landing page in the same way as other entity references are currently handled (via the include query parameter). A simple 'from-library' component mapping can be added to take that data and 'pass it through' to the component mapping of the relevant type.

A PR containing the required updates for Ripple will be made and referenced here.

Benefits

Solves the issue outlined in Motivation, and may be required or desired in other client projects (existing or future).

Drawbacks

The Tide UX re: creating/editing/placing a reusable paragraph would need to be reviewed to ensure that it is intuitive and presents no hindrance to the current editing experience.

Adoption strategy

Could be added to the Confluence documentation for Tide. Not sure if it needs any dev docs in Ripple except for test/s?

Additional information

  • Would you be willing to help implement this feature?
  • Could this feature be created outside of Ripple-framework as a layer?

Final checks

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions