menu_book Navigation menu

Entries

An Entry is a single instance of a Content Type (e.g., one specific blog post, or the homepage itself).

Automatic CRUD Generation

Pragma CMS embraces the "Data-Driven" philosophy. You do not need to write controllers or forms for your content. The system reads the JSON schema of your Content Type and automatically generates the Admin UI, validates the inputs, sanitizes the data, and maps it to the correct SQL columns.

System Entries Exceptions

While the majority of content relies on the automated CRUD, some foundational entities require specific, manual handling for architectural clarity and performance.

  • Pages: Conceptually, a page is an entry (it has a URL, SEO metadata, and publication status). It therefore uses the core entries and entries_translation tables for its passport. However, a page also dictates the structural flow of the site.
    • Custom Logic: To handle this, Pages bypass the automated generator and use a custom-built CRUD controller. This controller simultaneously writes to the core tables and to dedicated pages and pages_translation tables, which store page-specific logic (like template_pathpage_order, and static content).
    • Integration: Despite the custom CRUD, saving a page still triggers the standard ON_ENTRY_SAVE hook, ensuring ecosystem features (like automatic Sitemap XML generation) continue to function transparently.
  • Taxonomies & Terms: In Pragma CMS, Taxonomies (e.g., "Blog Categories") and Terms (e.g., "News") are entries. They leverage the entries and entries_translation tables to obtain a unique ID and a translatable slug.
    • Skinny Tables: Instead of generating massive, generic schema tables, they use highly optimized "skinny tables" (taxonomiestaxonomy_terms, and term_relationships). These tables are strictly designed to store their specific metadata (like SVG icons, layout configuration, hierarchy rules, and pivot associations with other content objects), avoiding the pollution of standard content tables and keeping SQL JOIN operations blazing fast.