Screenshot preseting creation of paragraph
Screenshot presenting edit form of the paragraph type
Screenshot preseting fields list of the paragraph type
Screenshot presenting widget configuration

Did you ever run into an issue of creating new paragraph type with the same fields only because it looks a bit different?
This tiny module is meant to easily reuse the same paragraph types with different view mode (display mode).
With this module, you can choose which view modes should be available during editing of the content by using the widget settings for a particular type of paragraph.
You can also dynamically choose in which display mode you want to render this specific paragraph when adding the content.

Simillar modules

IMPORTANT: This module may be incompatible with any similar modules because of using one and the same hook for altering the paragraph view mode.

How it is different comparing other modules?

  • This module is based on the Field API - provides new field type, field widget, whereas the other is based on the experimental Behaviour plugin provided by the Paragraphs module
  • This module does not depend on any Paragraphs widget
  • As the main functionality is provided by the field, then it allows to place the view mode selector anywhere on the paragraphs form (can be managed via UI), it is not forced by any other module or plugin.
  • Field-based approach allows to easy select paragraphs by the field value in views module or any database query operations
  • This module allows selecting only view modes enabled for the current paragraph bundle
  • The field is fully configurable as any other fields (label, required, translatable etc.) starting from version 3.0
  • The child paragraphs may also have their own view mode selector
  • The paragraph form is reloaded dynamically via AJAX if the form mode has the same ID as the selected view mode starting from version 3.1



Upgrade path from 8.x or 2.x versions to 3.x

No specific action is needed, just a regular Drupal modules update flow:

  • update the package (composer/zip whatever you are using) to ^3.0 version,
  • run drush updb command or go to /update.php in order to run the DB updates
  • run drush cr command or flush the cache from the admin panel
Supporting organizations: 

Project information

Releases