tentapress / blocks
0.11.1
2026-03-01 15:42 UTC
Requires
- php: ^8.2
- tentapress/admin-shell: <1.0
- tentapress/system: <1.0
README
Block registry and rendering system for TentaPress pages and posts.
Plugin Details
| Field | Value |
|---|---|
| ID | tentapress/blocks |
| Version | 0.11.1 |
| Provider | TentaPress\Blocks\BlocksServiceProvider |
Features
- Block registry (type → schema + renderer)
- Block validation on save
- Full-screen block editor
- Block list view with inline editing
- Right-side details panel
- Block inserter controls
- Page outline navigation
- Field types: text, textarea, richtext, select, image, repeater, nested-blocks, link, actions
- Variant-aware image rendering for image-based blocks when media records are available
- Optional presentation wrapper metadata (
props.presentation) for spacing, alignment, background, and container width - Builder preview-safe embed rendering with static thumbnails/placeholders instead of live third-party iframes
Dependencies
None.
Available Blocks
- Hero
- Heading
- Rich Text
- Image
- Gallery
- CTA / Button group
- Split Image + Content
- Split Layout (nested child blocks)
- FAQ (repeater)
- Embed
- Divider / Spacer
Split Layout Child Payload
blocks/split-layout stores child blocks in:
props.left_blocks(array of block objects)props.right_blocks(array of block objects)
Rules:
- Nesting depth is capped to one level.
- Child type
blocks/split-layoutis intentionally rejected to prevent recursive containers. - Admin editor supports inline child controls for scalar field types and repeater rows.
Extending
Themes and plugins can register additional blocks via the block registry.
Development
php artisan tp:plugins sync php artisan tp:plugins enable tentapress/blocks composer test composer test:filter -- BlocksRenderingBaselineTest composer test:filter -- BlocksEdgeCaseTest