In the WordPress world, if you want to go beyond a title and body, you install Advanced Custom Fields (ACF Pro — $49/year per site) or Meta Box. They became ubiquitous because WP itself offers almost nothing here. Contensio builds the same thing into the core — no license, no plugin.
The field palette
Attach fields to any content type
A field belongs to a content type. Each field knows whether it's translatable, required, searchable, and what validation rules apply. Change the schema later and existing content just keeps its old data — nothing is silently destroyed.
Example: a Product type
Product
├── sku (Text, required, not translatable)
├── price (Number, required, not translatable)
├── gallery (Repeater of Media)
├── short_desc (Text, translatable)
├── specifications (Repeater of {label, value})
└── related_products (Relationship → Product, multi)
Querying fields from your theme
In Blade (your theme templates):
<h1>{{ $content->title }}</h1>
<p class="price">{{ $content->field('price') }} €</p>
@foreach($content->field('gallery') as $image)
<img src="{{ $image->url }}" alt="">
@endforeach
Compared to WordPress
WordPress + ACF Pro
- ✗~$49/year per site
- ✗Post meta = everything-is-a-string
- ✗Multilingual requires yet another plugin
- ✗Relationship fields rely on extra plugins for performance
Contensio
- ✓Free (AGPL)
- ✓Typed field values, not serialized strings
- ✓Per-field "translatable" flag built in
- ✓Real Eloquent relationships for linked content