-
Notifications
You must be signed in to change notification settings - Fork 0
Content Editing
All content in Marble lives in a tree. Every item has a parent (except the root). The tree is visible in the left sidebar of the admin. Click any item to open its editor.
Click the + button next to an existing item in the tree. You'll be prompted to choose a blueprint. Only blueprints allowed as children of the selected parent will be offered.
The edit screen has two areas:
- Left/main area: All content fields defined by the blueprint
- Right sidebar: Metadata and actions (status, scheduling, URL, aliases, etc.)
Click Save to save. If autosave is enabled, changes are saved automatically in the background.
If your site uses multiple languages, a language switcher appears at the top of the editor. Translatable fields show separately per language. Non-translatable fields are shared across all languages.
Set Status to Published in the sidebar and save. Or use the quick toggle in the item tree.
If the blueprint has Schedulable enabled:
- Publish at — Item becomes published automatically at this date/time
- Expires at — Item reverts to draft automatically after this date/time
Requires marble:schedule-publish to run (add to Laravel scheduler).
If the blueprint has a workflow, an Advance button appears. Publishing happens automatically when the item reaches the final step. See Workflows.
To share an unpublished item with a reviewer:
- Click Generate Preview in the sidebar
- Copy the preview URL
- Share it — the recipient can view the item on the frontend without it being published
Preview tokens are stored on the item and remain valid until manually refreshed.
If the blueprint has Versionable enabled, every save creates a revision snapshot. Click Revisions in the sidebar to view diffs or revert to a previous version.
The item's URL is derived from its name and position in the tree. Marble generates a slug from the name automatically. Override it in the URL field in the sidebar.
Add alternative URLs for an item via URL Aliases in the sidebar. All aliases resolve to the same item.
The Reachable via box in the sidebar shows every URL the item is currently accessible at: its canonical slug per language, any URL aliases, and any mount-point paths.
An item can be accessible from multiple positions in the tree simultaneously. In the sidebar, use Mount Points → Select parent item to add additional parent locations. The item keeps its canonical position and gains new URLs under each mount parent.
{{-- All URLs (canonical + mounts) per language --}}
@foreach($item->allSlugs() as $slug)
{{ $slug }}
@endforeachClick Move in the sidebar, then select the new parent in the tree.
Click Duplicate to create a copy as a draft alongside the original.
Click Delete in the sidebar. Items are soft-deleted and move to System → Trash. From there they can be restored or permanently deleted.
The Show in Navigation toggle controls whether this item appears in Marble::navigation().
When you open an item for editing, Marble acquires a lock. Other editors see a warning. Locks expire automatically after the configured lock_ttl (default 5 minutes).
Click Watch in the status sidebar box to subscribe to an item. You will receive an in-app notification whenever the item is saved, its status changes, or it moves through a workflow step.
Click Unwatch to stop receiving notifications for that item. Watched items also appear on your dashboard under Watched Items for quick access.
Click Relations Graph in the status sidebar box to see a visual D3.js force-directed graph of the item's connections: parent, children, outgoing field relations (object_relation, object_relation_list), incoming relations from other items, and mount points.
- Drag nodes to rearrange
- Scroll to zoom, drag background to pan
- Double-click a node to navigate to that item's editor
Group multiple items for coordinated publishing. See Content Bundles for details.
Create a Variant B for any item to test alternative content. See A/B Testing for details.
For any field, click the history icon to see the full value history — all saved values with timestamps and the user who made each change. Use the slider to navigate through versions and restore any previous value with one click.