Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: ECA: Event - Condition - Action 3.1.9 Minor update available for module eca (3.1.9). Release: Site verification 3.0.1 Minor update available for module site_verify (3.0.1). Release: Configuration development 8.x-1.13 Minor update available for module config_devel (8.x-1.13). Usage Milestone: Entity Browser Module entity_browser crossed 100,000 active installs. Release: Sign for acknowledgement 3.0.6 Minor update available for module acknowledgements (3.0.6). Release: Sync Clients 1.0.2 Minor update available for module sync_clients (1.0.2). Release: Sync Clients 1.1.1 Minor update available for module sync_clients (1.1.1). Release: Mautic Audiences 1.1.2 Minor update available for module mautic_audiences (1.1.2). Release: Advanced Mautic Integration 1.2.0 Minor update available for module advanced_mautic_integration (1.2.0). Module Revived: Menu Import and Export 8.x-1.8 Module menu_export updated after 10 months of inactivity (8.x-1.8).

Webform Content Gate

No security coverage

Part of the Webform ecosystem · 158 projects

View on drupal.org

Webform Content Gate puts a content entity behind a Webform. A visitor who opens a gated page is sent to the form instead. Once they submit it, that one page is unlocked for the rest of their browser session. Nothing else is unlocked, and nothing survives the session.

How it works

Webform Content Gate is a Rabbit Hole behavior plugin, so it works on any entity type Rabbit Hole is enabled for, and it is configured wherever Rabbit Hole settings already live: per bundle, or per entity when you allow overrides.

  1. A visitor requests a gated entity.
  2. The gate redirects them to the configured Webform, carrying Webform's own source_entity_type and source_entity_id parameters plus a destination back to the entity.
  3. They submit the form. The module checks that the named entity really is gated by the Webform that was just submitted, then records the grant in the session.
  4. The destination returns them to the entity, which now renders.

Features

  • Works with any content entity type, not just nodes.
  • One Webform can gate many entities; each submission unlocks only the entity the visitor asked for.
  • Form location setting sends blocked visitors to a landing page that embeds the form, rather than to a bare form URL.
  • Private files attached to a gated entity are denied until the session holds a grant, via hook_file_download().
  • Each submission records which entity it unlocked, so lead reports name the asset rather than the form.
  • Blocked redirects are cacheable, so a crawler sweep over gated URLs costs one render rather than one per request.

Recommended modules

None of these are required, but a gated form is a public form and will attract bots.

Similar modules

Depends on

Dependencies of the latest stable release

No dependencies recorded for this project.

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
2
Tracked since
Sep 2026
Latest release
6 hours ago
Releases (12 mo)
2 ▲ from 0
Maintenance
Active

Releases

Version Type Core Release date
1.0.0-beta1 Pre-release 11 Sep 22, 2026
1.0.x-dev Dev 11 Sep 22, 2026