---
url: 'https://dxpr.com/hc/documentation/learn-drupal/drupal-glossary/paragraphs'
title: 'Paragraphs | DXPR'
author:
  name: Jurriaan
  url: 'https://dxpr.com/users/jurriaan'
date: '2026-10-26T18:01:04+00:00'
copyright: 'Copyright DXPR. All rights reserved.'
type: article
summary: 'Paragraphs is a contributed module that adds the paragraph entity: a small, typed content item with its own fields, owned by one parent entity.'
tags:
  - 'Drupal glossary'
image: 'https://dxpr.com/themes/custom/dxpr_com/images/dxpr-share-card.jpg'
published: true
og:
  site_name: DXPR
  updated_time: '2026-10-26T18:01:04+0000'
  'image:alt': 'DXPR, powered by Drupal: AI-powered Drupal for marketers.'
schema:
  '@context': 'https://schema.org'
  '@graph':
    -
      '@type': FAQPage
      mainEntity:
        -
          '@type': Question
          name: 'Is Paragraphs part of Drupal core?'
          acceptedAnswer:
            '@type': Answer
            text: '<p>No. It is a contributed module that you add with Composer. Release 8.x-1.23 declares support for Drupal ^10.3 or ^11 and depends on the Entity Reference Revisions module. The drupal.org project page, checked on 26 October 2026, lists 8.x-1.23 as the latest release, dated 5 August 2026.</p>'
        -
          '@type': Question
          name: 'Which Paragraphs widget should I choose?'
          acceptedAnswer:
            '@type': Answer
            text: '<p>Paragraphs (stable). The 8.x-1.23 README calls it the default and recommended widget, and a new Paragraph field made in Field UI gets it. The README also warns that changes between versions are to be expected. Paragraphs Legacy has limited features and, per the README, will not be changed or updated.</p>'
        -
          '@type': Question
          name: 'Can one paragraph be reused on several pages?'
          acceptedAnswer:
            '@type': Answer
            text: '<p>Not by default. Each paragraph stores its parent&#039;s entity type, ID and field name, so it belongs to one parent. The Paragraphs Library submodule, which needs Entity Usage and Views, adds a library of reusable paragraphs for this purpose.</p>'
        -
          '@type': Question
          name: 'How does Paragraphs differ from Layout Builder?'
          acceptedAnswer:
            '@type': Answer
            text: '<p>Paragraphs shapes the content you enter: each paragraph type has its own fields on the edit form. Layout Builder, a core module, shapes how stored content is displayed, by arranging fields and blocks in sections.</p>'
    -
      '@type': TechArticle
      headline: Paragraphs
      description: 'Paragraphs is a contributed module that adds the paragraph entity: a small, typed content item with its own fields, owned by one parent entity.'
      image:
        '@type': ImageObject
        url: 'https://dxpr.com/themes/custom/dxpr_com/images/dxpr-share-card.jpg'
        width: '1200'
        height: '630'
      datePublished: '2026-10-26T18:01:04+0000'
      dateModified: '2026-10-26T18:01:04+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-drupal/drupal-glossary/paragraphs'
      articleSection: 'Drupal glossary'
    -
      '@type': WebPage
      '@id': 'https://dxpr.com/hc/documentation/learn-drupal/drupal-glossary/paragraphs'
      description: 'Paragraphs is a contributed module that adds the paragraph entity: a small, typed content item with its own fields, owned by one parent entity.'
      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 Drupal](/hc/documentation/learn-drupal) /[Drupal glossary](/hc/documentation/learn-drupal/drupal-glossary) # Paragraphs

Paragraphs is a contributed module that adds the paragraph entity: a small, typed content item with its own fields, owned by one parent entity.

 Learn DrupalDrupal glossary Last updated October 26, 2026

   ## In this guide

 Related terms

- [Content type](/hc/documentation/learn-drupal/drupal-glossary/content-type)
- [Field](/hc/documentation/learn-drupal/drupal-glossary/field)
- [Bundle](/hc/documentation/learn-drupal/drupal-glossary/bundle)
- [Reference field](/hc/documentation/learn-drupal/drupal-glossary/reference-field)
- [Layout Builder](/hc/documentation/learn-drupal/drupal-glossary/layout-builder)
- [Drupal Canvas (formerly Experience Builder)](/hc/documentation/learn-drupal/drupal-glossary/drupal-canvas)

 [All Drupal terms from A to Z](/hc/documentation/learn-drupal/drupal-glossary)

Paragraphs is a contributed Drupal module that lets editors build a page from stackable, typed pieces instead of one large body field. Each piece is a paragraph: a small entity with its own fields, such as an image with a caption or a pull quote. A paragraph field on a node holds an ordered list of them.

## How it works in Drupal 11

Paragraphs depends on Entity Reference Revisions, and release 8.x-1.23 declares Drupal ^10.3 or ^11. A paragraph is an [entity](/hc/documentation/learn-drupal/drupal-glossary/entity) with the ID `paragraph`. Its [bundle](/hc/documentation/learn-drupal/drupal-glossary/bundle) is a Paragraphs type, a configuration entity with the ID `paragraphs_type`. Paragraphs are revisionable: the entity class declares its own revision tables.

A site builder creates the types at `Structure › Paragraph types` (path `/admin/structure/paragraphs_type`) and adds fields to each, in the same way as for a [content type](/hc/documentation/learn-drupal/drupal-glossary/content-type). Then they add a field to a content type, choosing `Reference` and then `Paragraph (revisions)`, and tick which paragraph types the field allows. The permission `administer paragraphs types` guards the type list. The optional Paragraphs Type Permissions submodule adds permissions for individual types.

On the edit form, the editor adds paragraphs, picks a type, fills in its fields and drags paragraphs into a new order. The stable widget also offers duplication and a drag and drop mode that can move a paragraph, with its children, into another paragraph. Each type renders with its own template: Paragraphs suggests `paragraph--[type].html.twig` and a variant per view mode.

## Example

A landing page needs a flexible body. Go to `Structure › Paragraph types › Add paragraph type` and create Text with image, with an image field and a long text field. Create Quote, with a quote and an attribution. Then open `Structure › Content types › Landing page › Manage fields`, add a `Paragraph (revisions)` reference field called Sections, and allow those two types. An editor can now stack any mix of text blocks and quotes in any order on each landing page.

## Common mistakes

- **Trusting old widget names.** On 26 October 2026 the project page still describes a Classic widget and an Experimental widget with major changes expected. In 8.x-1.23 the README calls them Legacy (formerly Classic) and Stable (formerly Experimental), and the form display lists Paragraphs Legacy and Paragraphs (stable).
- **Expecting shared content.** A paragraph belongs to one parent. If several pages need the same block, use the Paragraphs Library submodule or a separate content type.
- **Expecting Paragraphs to design the page.** A paragraph type defines fields and a display. The arrangement on the page still comes from templates, the type's view modes or another tool.

## For marketing and content teams

Paragraphs gives editors a menu of approved building blocks. You add what a page needs, in the order you want, without touching HTML. Ask your developer for the list of paragraph types, and request a new type when a block keeps being faked with formatting in a text field. Because each type has named fields, the content stays structured and can be restyled later. The editor works in a form, not on the finished page. See also [Layout Builder](/hc/documentation/learn-drupal/drupal-glossary/layout-builder) for controlling how a page is arranged.

## With DXPR

DXPR's [comparison with Paragraphs](/compare-dxpr/drupal-paragraphs), reviewed on 24 September 2026, says DXPR Builder can be introduced on selected fields or content types while existing Paragraphs pages stay in place. It also says that converting existing content is a separate decision and not an automatic effect of installing DXPR Builder.

## Sources

- [Drupal.org: Paragraphs project page](https://www.drupal.org/project/paragraphs)
- [Drupal.org: Paragraphs documentation](https://www.drupal.org/docs/contributed-modules/paragraphs)
- [Paragraphs 8.x-1.23: README](https://git.drupalcode.org/project/paragraphs/-/blob/8.x-1.23/README.txt)
- [Paragraphs 8.x-1.23: module info file](https://git.drupalcode.org/project/paragraphs/-/blob/8.x-1.23/paragraphs.info.yml)
- [Paragraphs 8.x-1.23: Paragraph entity class](https://git.drupalcode.org/project/paragraphs/-/blob/8.x-1.23/src/Entity/Paragraph.php)
- [Paragraphs 8.x-1.23: Paragraphs library submodule](https://git.drupalcode.org/project/paragraphs/-/tree/8.x-1.23/modules/paragraphs_library)
- [DXPR: DXPR Builder compared with Paragraphs](/compare-dxpr/drupal-paragraphs)

## Questions about Paragraphs

### Is Paragraphs part of Drupal core?

No. It is a contributed module that you add with Composer. Release 8.x-1.23 declares support for Drupal ^10.3 or ^11 and depends on the Entity Reference Revisions module. The drupal.org project page, checked on 26 October 2026, lists 8.x-1.23 as the latest release, dated 5 August 2026.

### Which Paragraphs widget should I choose?

Paragraphs (stable). The 8.x-1.23 README calls it the default and recommended widget, and a new Paragraph field made in Field UI gets it. The README also warns that changes between versions are to be expected. Paragraphs Legacy has limited features and, per the README, will not be changed or updated.

### Can one paragraph be reused on several pages?

Not by default. Each paragraph stores its parent's entity type, ID and field name, so it belongs to one parent. The Paragraphs Library submodule, which needs Entity Usage and Views, adds a library of reusable paragraphs for this purpose.

### How does Paragraphs differ from Layout Builder?

Paragraphs shapes the content you enter: each paragraph type has its own fields on the edit form. Layout Builder, a core module, shapes how stored content is displayed, by arranging fields and blocks in sections.

 ## Cite this definition

"Paragraphs." DXPR Drupal glossary, https://dxpr.com/hc/documentation/learn-drupal/drupal-glossary/paragraphs. Last updated October 26, 2026.

 Copy  ## Related terms

- [Content type](/hc/documentation/learn-drupal/drupal-glossary/content-type)
- [Field](/hc/documentation/learn-drupal/drupal-glossary/field)
- [Bundle](/hc/documentation/learn-drupal/drupal-glossary/bundle)
- [Reference field](/hc/documentation/learn-drupal/drupal-glossary/reference-field)
- [Layout Builder](/hc/documentation/learn-drupal/drupal-glossary/layout-builder)
- [Drupal Canvas (formerly Experience Builder)](/hc/documentation/learn-drupal/drupal-glossary/drupal-canvas)

[All Drupal terms from A to Z](/hc/documentation/learn-drupal/drupal-glossary)