craftcms-opslisted
Install: claude install-skill 0xDarkMatter/claude-mods
# Craft CMS Operations
Authoritative reference for **Craft CMS 5.x** development: content modeling, Twig templating, element-query optimization, GraphQL/headless setups, plugin development, and the Craft 4 → 5 migration. Craft is a self-hosted PHP application built on Yii 2, backed by MySQL or PostgreSQL.
> **Version note (verified against craftcms.com/docs/5.x, 2026-06):** Craft 5 is current; Craft 6 exists. The defining Craft 5 change is that **Matrix is now an entries-based field** — Matrix "blocks" are gone, replaced by nested **entries** with **entry types**. Fields are **globally reusable** across all field layouts. Don't ship Craft 3/4 "Matrix block" guidance.
---
## Craft 5 architecture at a glance
| Concept | What it is | Craft 5 change |
|---------|-----------|----------------|
| **Section** | Container exposing entry types + URL rules | Three kinds: Single, Channel, Structure |
| **Entry Type** | Atomic unit of content (fields, title, slug) | Now **global + reusable** across sections, with per-section aliases |
| **Entry** | An instance of an entry type | Can be top-level or **nested** (inside Matrix/CKEditor) |
| **Field** | Reusable input attached via field layouts | **Globally reusable** — no per-field-instance duplication |
| **Matrix field** | Repeatable nested content | **Now stores entries** (entry types), not "blocks". Nesting supported natively |
| **Project Config** | Version-controlled schema (`config/project/`) | Source of truth for sections/fields