Collections

Your content model, inside WordPress.

Define content types and their fields in Leiho, or keep the ACF fields you already have. Either way the entries are WordPress posts, edited visually and served by the same API.

cms.ateliersorel.com/wp-adminLive
01

19 field types

Text, rich text, number, boolean, dates, select, slug, email, URL, color, image, file, gallery, link, reference, list, blocks and group, nested freely.

02

Entries are posts

Roles, drafts, scheduling, trash, revisions, the media library, SEO and multilingual plugins keep working.

03

Typed storage

Values live in one table per collection with typed, indexed columns, not in postmeta. MySQL, MariaDB or SQLite.

04

Schema builder

Build collections and single pages without writing JSON, review the migration before it runs.

05

Safe migrations

Renaming a field is free. Removed or retyped columns are archived, never dropped.

06

Import from ACF

Move an ACF content type to Leiho in a few clicks, with the same JSON on the front end, and go back if you change your mind.

Schema as code

Export the schema to leiho.schema.json, keep it in your front-end repository and import it on another site.

leiho.schema.json
{
  "leiho": "collections",
  "version": 1,
  "collections": [
    { "id": "service", "label": "Services", "path": "/services/{slug}", "fields": [
      { "name": "price", "type": "number", "min": 0 },
      { "name": "faq", "type": "list", "fields": [
        { "name": "question", "type": "text", "required": true },
        { "name": "answer", "type": "richtext" }
      ] }
    ] }
  ]
}

ACF keeps working

Leiho reads and writes the ACF fields you already have: repeaters, groups, flexible content, relationships and images. You can switch content types to Collections one at a time, or never.

Edit the real site.

Free and open source. Try it on a real WordPress, in your browser.