This page is intended to outline a few of the strengths and weaknesses of using Panels and Paragraphs as content architecture solutions.


Paragraphs

Pros:

Content Editing Experience

  • Gives content editors great flexibility in managing content by allowing them to select which kinds of Paragraphs they want to place on the page.
  • Paragraphs is especially useful on sites with row based layouts.
  • Paragraphs can serve as a great alternative to Field Collections when you need to repeat field values within a parent entity.
  • Content editors with some Drupal experience should feel comfortable using Paragraphs because it uses Drupal's Entity API system and is fieldable.

Translation

  • The Paragraphs module works within a multilanguage setup but with a few constraints.

Revisions

  • Entity Reference Revisions is the only module requirement and it allows Paragraphs to become revisioned along with the node they are attached to.

Editorial Workflows

  • Paragraphs supports Content Moderation workflows. For example, when you change paragraphs content on a new draft, the changes stay in draft and are not immediately visible to anonymous users.

Search

  • Drupal's default search is capable of indexing Paragraph entities as part of their parent nodes.
  • The paragraphs_demo module that is included with Paragraphs contains an example search index that indexes paragraphs.

Reusable Entities

  • Paragraph Types can be reused in different reference fields.

Lightning Distribution Compatibility

Acquia Lift Compatibility

  • Paragraphs is compatible with Acquia Lift 3.

Acquia Content Hub Compatibility

Module Stability

Theming

  • Paragraphs returns render elements and provides template suggestions for bundles and view modes.

Migration

  • Migrations are supported with Paragraphs.

Cons/gotchas

Content Editing Experience

  • Content editors won't know how content will appear until after the Paragraph is saved. Paragraphs works with quick edit, but it sees the field as a whole, meaning using quick edit will show the full paragraphs field in the popup. A proposed resolution includes extending the quickedit functionality.
  • Editing experience can get unwieldy if there are multiple Paragraph types on the entity edit screen

Translation

Reusable Entities

Revisions

Migration

Panels

Pros:

Content Editing Experience

  • Panelizer and PageManager are two modules that implement panels. PageManager creates pages or routes that have layouts and Panelizer embeds blocks into entities. Panelizer also acts as a display mode that overrides an entity's default display mode.
  • Panels provides a WYSIWYG layout and editing experience with IPE (In Place Editor) giving content editors an easy way to arrange and place content.
  • A few of the ideas behind Panelizer and Page Manager are making their way into Drupal Core.
  • The Layout Discovery module was included in Drupal 8.3 and adds a Layout API to core. Both Panelizer and Panels adopted the new Layout API with their 8.4 release.
  • The field layout module was added to Drupal core in 8.3. and adds layout integration to the field ui allowing you to apply layouts to content types.

Lightning Distribution Compatibility

Module Stability

Separation of Concerns

  • Panels layout and display are managed separately from data. For example, blocks are created in Drupal and then placed with Panelizer and PageManager.

Cons:

Translation

Content Editing Experience

  • The content editing experience may confuse content editors when some content is editable with IPE and other content requires using the node edit form.
  • IPE only appears when a node is in a draft state. This can lead to some confusion unless you explicitly know to do this.

Editorial Workflows

Migration

Revisions