paragraph_access
## Project Summary (Short Description)
Take control of content visibility on your group-based Drupal sites with flexible, granular access restrictions for paragraphs.
### Overview
The **Paragraph Access** module provides comprehensive access control for paragraphs within group-based Drupal sites. Whether you're building a community platform, intranet, or collaborative workspace, this module gives you the flexibility to control exactly who can see specific content sections based on group membership and user roles.
### Key Features
**🎯 Dual-Level Access Control**
- **Global Type Restrictions**: Configure which paragraph types should be restricted site-wide
- **Per-Paragraph Control**: Override global settings on individual paragraphs for maximum flexibility
**👥 Group-Based Access**
- Seamlessly integrates with the Group module
- Restrict paragraph visibility to group members only
- Works with group content entities and nested group relationships
**🔐 Role-Based Restrictions**
- Restrict paragraphs to specific user roles
- Combine role and group restrictions with OR logic for flexible access patterns
- Automatically sorts roles by weight for consistent user experience
**⚡ Smart Access Logic**
- Bypass permissions for administrators
- Graceful fallback from specific to global settings
- Support for complex group hierarchies and relationships
### Perfect For
**Community Sites**
- Private discussions visible only to group members
- Role-specific announcements (moderators, premium members)
- Member-only resources and content
**Corporate Intranets**
- Department-specific information
- Executive communications restricted by role
- Project team collaboration spaces
**Educational Platforms**
- Course-specific materials for enrolled students
- Instructor-only content sections
- Administrative notices for staff
**Membership Sites**
- Premium content for paid subscribers
- VIP-only sections and benefits
- Tiered access based on membership levels
### How It Works
1. **Configure Global Settings**: Define which paragraph types should be restricted by default
2. **Content Creation**: When editing group content, editors see intuitive checkboxes for:
- "Show to Group Members ONLY"
- "Show to Specific Roles ONLY" (with role selection)
3. **Automatic Enforcement**: The module handles all access checks transparently during page rendering
### Technical Highlights
- **Performance Optimized**: Efficient access checks that don't slow down your site
- **Developer Friendly**: Clean API for custom access logic
- **Standards Compliant**: Follows Drupal coding standards and best practices
- **Well Tested**: Comprehensive test coverage ensures reliability
### Installation & Setup
1. Install via Composer: `composer require drupal/paragraph_access`
2. Enable the module at `/admin/modules`
3. Start using per-paragraph access controls when editing group content
### Requirements
- Drupal 9, 10, or 11
- Group module
- Paragraphs module
- Inline Entity Form module
### Support & Community
This module is actively maintained and supported. Report issues, request features, or contribute patches through the [issue queue](https://www.drupal.org/project/issues/paragraph_access).
### Why Choose Paragraph Access?
Unlike simple field-level permissions or basic group access controls, Paragraph Access provides:
- **Granular Control**: Restrict individual content sections, not entire pages
- **Flexible Logic**: Mix and match group and role restrictions as needed
- **User-Friendly Interface**: Content editors don't need technical knowledge
- **Scalable Architecture**: Works efficiently on sites with hundreds of groups and thousands of users
- **Future-Proof**: Regular updates ensure compatibility with latest Drupal versions
Transform your group-based Drupal site with precise, flexible content access control. Download Paragraph Access today and give your users exactly the right level of access to your content.
---
### Supported Drupal Versions:
9.x, 10.x, 11.x