Tag System
OmarCMS uses a centralized tag taxonomy to keep your content organized and prevent tag sprawl.
How Tags Work
Instead of allowing arbitrary tags, you define a curated list in src/data/tags.json.
This keeps your blog organized and makes it easier for readers to discover related content.
Defining Tags
Edit src/data/tags.json:
{
"tags": [
{
"id": "AI",
"name": "AI",
"description": "Artificial intelligence, machine learning, and LLMs"
},
{
"id": "philosophy",
"name": "Philosophy",
"description": "Deep thinking and existential questions"
},
{
"id": "code",
"name": "Code",
"description": "Programming, development, and technical topics"
}
]
} Using Tags in Posts
Add tags to your post frontmatter:
---
title: "My Post"
date: "2026-02-14"
tags: ["AI", "philosophy"]
--- Tag Filtering
The blog index page includes tag filters. Readers can click a tag to see all posts with that tag. The tag filter state persists in the URL.
Best Practices
- Keep it small - 5-10 core topics work better than 50 tags
- Use broad categories - "AI" not "machine-learning-transformers"
- Add tags as needed - Start small, expand as your content grows
- Write descriptions - Help readers understand what each tag covers
Why Centralized Tags?
Most blogging platforms let you create tags on the fly. This leads to:
- Inconsistent naming ("AI" vs "artificial-intelligence" vs "ai")
- Too many one-off tags that never get reused
- Confusing taxonomy that doesn't help readers
A curated tag list forces intentionality. You think about how your content fits together before publishing, not after.