Beta . Ortha CMS is in public beta. Every plan is free until it ends.
Get started
Menu

Content · 6 / 23

Content library

Filter any collection with nested AND and OR groups, reach through relations, and save what you see as a view.

ContentCollectionsArticles Add record
Articles 248 records2 records in this collection.
All records Needs review View Trash
Published Modified Draft Search records English 3
Summary is empty Updated less than 2026-03-01 Clear all
TitleLocalesStatus
The quiet return of night trains EN DE FR Published
How we rebuilt the city archive EN DE Modified
A field guide to urban beekeeping EN Draft
Five reservoirs, one summer EN FR Published
Inside the harbour’s night shift EN Draft
Why libraries lend seeds now EN DE FR ES Published
The last typewriter repair shop EN Modified
Mapping the city’s lost rivers EN DE Published
1–8 of 2481–2 of 2
Filters No conditions 1 condition 3 conditions
ANDOR
Status equals Published
ANDOR
Summary is empty
Updated less than Mar 1, 2026
JSON preview
“Needs review” saved.
2 selectedof 2 Publish Unpublish Delete

How it works

  1. 01

    Add rules and groups. Each group has its own AND / OR.

  2. 02

    Apply, and the records filter. A rule can reach a linked record’s fields.

  3. 03

    Save it as a personal or shared view — or as an alarm.

Operators
14, chosen by field type
Views
Personal or shared
API
The same filter JSON over REST and GraphQL

In depth · For editors with thousands of records

Any slice of your content, one link away

Compose filters instead of picking from a menu, and send somebody exactly what you are looking at.

Filters that nest, and reach through relations

Each group has its own AND / OR and can hold more groups, so “German or French, published, missing a cover” is one query. A condition can reach a linked entry — author.email, not just author.

Under the hood

The conditions you are offered depend on the field you picked.

The fourteen conditions

Show the table
In the popover What it asks
equals · is not Equals, and does not equal.
greater than · less than And “or equal to”, on numbers and dates.
is one of · is none of One of a list, or none of it.
contains · does not contain A case-insensitive text match.
is empty · is not empty Set or unset.
between A range on numbers and dates.
within the last A rolling window, such as the last 7 days.

Rich text is not filterable; free-text search still reaches it.

The view is the URL

Search, filters, sort and page live in the address bar. Back works, a bookmark is a view, and a link shows a colleague the exact screen you are on.

Under the hood

Name a view to keep its filters, sort and columns — private, or shared with the workspace with views:share.

What that adds up to

Bulk actions on the result
Publish, unpublish or delete everything a filter matched.
The same grammar over the API
The popover builds the same JSON your front end sends to /api/v1.
Scoped to your workspace
No view quietly spans two brands.

Questions

How fast is it on a big table?

List reads are indexed on workspace and status, which keeps a filtered list fast at a hundred thousand records.

Does the filter survive switching language?

Yes. Locale is a URL parameter, so changing it narrows the same query.

Full reference in the docs