Editables Overview
Brief introduction to editable content regions in Nimbu themes
Editable regions allow content editors to update text, images, and other content directly through the Nimbu admin interface without touching code. This makes themes more accessible to non-technical users.
What Are Editables?
Editables are special Liquid tags that create editable content regions:
{% editable_field %}- Single-line text input{% editable_text %}- Rich text editor (WYSIWYG){% editable_file %}- Image/file uploads{% editable_select %}- Dropdown selections{% editable_switch %}- Boolean toggles{% editable_reference %}- Links to other content{% editable_canvas %}- Drag-and-drop page builders{% editable_group %}- Organize related editables{% repeatable %}- Content blocks users can add/remove
Quick Example
<section class="hero">
<h1>{% editable_field title %}Welcome{% endeditable_field %}</h1>
{% editable_text content %}
<p>Add your hero content here...</p>
{% endeditable_text %}
{% editable_file image %}
{{ "default-hero.jpg" | theme_image_url }}
{% endeditable_file %}
</section>When editors visit this page in the Nimbu admin, they'll see:
- An inline text editor for the title
- A rich text editor for the content
- An image upload button for the hero image
Canvas & Repeatables
The most powerful editable features are canvas and repeatables, which create drag-and-drop page builders:
{% editable_canvas content %}
{% repeatable "Text Block" %}
{% include 'repeatables/text-block' %}
{% endrepeatable %}
{% repeatable "Image Gallery" %}
{% include 'repeatables/gallery' %}
{% endrepeatable %}
{% repeatable "Product Grid" %}
{% include 'repeatables/products' %}
{% endrepeatable %}
{% endeditable_canvas %}This creates a flexible page builder where editors can:
- Add blocks by clicking "+ Add Section"
- Choose from available repeatable types
- Drag blocks to reorder them
- Edit content within each block
- Remove blocks they don't need
Where to Learn More
Editables are a large topic with many features and options. For comprehensive documentation, see:
Pages Section
The Pages documentation provides complete coverage of:
- All editable tag types with examples
- Canvas and repeatable patterns
- Real-world page builder examples
- Best practices for editable regions
- Common patterns from production themes
Quick Links by Feature
- Canvas System - Drag-and-drop page builders
- Repeatable Blocks - Flexible content sections
- Editable Tags Reference - Complete tag documentation
- Translation - Multilingual content editing
Key Concepts
Before diving into the detailed documentation, understand these concepts:
1. Default Content
Always provide default content so pages look good before editing:
{% editable_field heading %}Default Heading{% endeditable_field %}2. Assignment for Reuse
Assign editable values to variables for reuse:
{% editable_field button_text, assign: btn_text %}
{% if btn_text %}
<button>{{ btn_text }}</button>
{% endif %}3. Labels and Hints
Help editors understand what each field is for:
{% editable_file logo, label: "Company Logo", hint: "Upload a PNG or SVG (max 200KB)" %}4. Organization with Groups
Group related settings together:
{% editable_group settings, label: "Section Settings" %}
{% editable_select theme, options: "light,dark" %}
{% editable_switch show_border %}
{% endeditable_group %}When to Use Editables
Use Editables For:
✅ Content that changes frequently (homepage hero, announcements) ✅ Content that varies by page (page titles, descriptions) ✅ Settings that non-technical users should control ✅ Flexible page layouts (canvas + repeatables)
Don't Use Editables For:
❌ Theme structure and global navigation ❌ Complex logic or calculations ❌ Content that never changes ❌ Technical configuration
Example: Editable Product Features
<section class="product-features">
<div class="container">
<h2>{% editable_field section_title %}Features{% endeditable_field %}</h2>
{% editable_canvas features %}
{% repeatable "Feature" %}
<div class="feature">
<div class="icon">
{% editable_file icon %}
{{ "default-icon.svg" | theme_image_url }}
{% endeditable_file %}
</div>
<h3>{% editable_field title %}Feature Title{% endeditable_field %}</h3>
<div class="description">
{% editable_text description %}
<p>Describe this feature.</p>
{% endeditable_text %}
</div>
</div>
{% endrepeatable %}
{% endeditable_canvas %}
</div>
</section>Editors can:
- Change the section title
- Add/remove/reorder features
- Upload custom icons for each feature
- Edit feature titles and descriptions
- All without touching code
Next Steps
For complete documentation on all editable features, continue to:
Pages - Complete Editables Guide
This comprehensive guide covers:
- All 9 editable tag types in detail
- Canvas and repeatable patterns
- Advanced techniques and examples
- Real code from production themes
- Best practices and common pitfalls
Or explore related topics:
- Snippets - Create reusable repeatable components
- Templates - Use editables in different page types
- Multilingual Sites - Translate editable content