---
title: Field Type
date: 2026-07-05T17:27:00+01:00
author: John Henry Donovan
canonical_url: "https://johnhenry.ie/plugins/order-lifecycle/docs/guide/field-type"
section: Plugins
---
esc

↑↓ to navigate↵ to selectesc to close

Menu On this page 

- [Return to top](#)

Documentation

Documentation

# Field Type

Order Lifecycle adds one custom field type - **Order Lifecycle Events** - that you attach to your Commerce order field layout. This page covers the field itself: where it goes, what it shows, and how it behaves. For the detail inside each section, see [Timeline View](https://johnhenry.ie/plugins/order-lifecycle/docs/guide/timeline-view), [Statistics](https://johnhenry.ie/plugins/order-lifecycle/docs/guide/statistics), and [AI Insights](https://johnhenry.ie/plugins/order-lifecycle/docs/guide/ai-insights).

## Adding to Your Order Layout

1. Go to **Settings** → **Fields** → **New Field**
2. Give it a name, e.g. "Order Lifecycle"
3. Set the field type to **Order Lifecycle Events**
4. Save the field
5. Go to **Commerce** → **System Settings** → **Order Field Layout**
6. Drag the field into your layout (a dedicated "Logs" or "History" tab keeps it out of the way of order editing)
7. Save the layout

There's nothing to configure on the field itself - see Field Settings below.

![](https://johnhenry.ie/images/plugins/docs/order-lifecycle/field-layout-editor.png)## What It Shows

The field renders up to three sections, top to bottom, depending on your plugin settings and whether the order has any recorded activity:

SectionShown whenFull detailSummary cards`showLifecycleStats` is enabled and the order has at least one eventTimeline View → Summary Cards / StatisticsOrder analysisAn Anthropic API key is configuredAI Insights → Per-Order InsightsEvent timelineThe order has at least one recorded eventTimeline View

![](https://johnhenry.ie/images/plugins/docs/order-lifecycle/field-overview.png)## Field Settings

The field has **no settings of its own** - there's nothing to configure in the field's own settings screen when you add it to a layout. Everything that changes what the field shows or how it behaves lives in the plugin's own settings at **Settings → Order Lifecycle** instead (event logging toggles, the stats widget toggle, the Anthropic API key, and so on) - see [Configuration](https://johnhenry.ie/plugins/order-lifecycle/docs/getting-started/configuration) for the full list.

## Requirements &amp; Restrictions

- **Craft Commerce order elements only.** The field renders a warning note if it's added to a field layout for anything other than a Commerce `Order` element (a product type, an entry type, and so on).
- **Read-only.** The field doesn't store or accept any input - it has no content column (`hasContentColumn()` returns `false`) and nothing is saved against it when the order is saved.
- **Not translatable.** The field uses `TRANSLATION_METHOD_NONE`, since there's nothing per-site to translate - the same recorded events show regardless of site.
- **One per layout is enough.** Since the field has no settings and always shows the same order-wide data, adding it more than once to the same layout just repeats the same content.

## Empty &amp; Error States

The field checks a few things before it renders anything, and shows a plain note instead of a section if a check fails. These are checked in order, so the first matching condition wins:

ConditionWhat showsCraft Commerce isn't installed"Craft Commerce must be installed to use this field."No element to render against at all"This field can only be used with saved orders."The field is attached to something other than a Commerce order"This field can only be added to Commerce Order elements." (shown as a warning)The order exists but hasn't been saved yet (no ID)"Order lifecycle events will appear after the order is saved."The order is saved but has no recorded events yet"No Order lifecycle events yet - Events will be recorded as customers interact with this order."

The last row is the one exception - it isn't a guard clause in the field class itself, but the template's own empty state once the field has everything it needs to render.

- [Installation](https://johnhenry.ie/plugins/order-lifecycle/docs/getting-started/installation) - First-time setup, including creating and adding this field
- [Timeline View](https://johnhenry.ie/plugins/order-lifecycle/docs/guide/timeline-view) - The event timeline section in detail
- [Statistics](https://johnhenry.ie/plugins/order-lifecycle/docs/guide/statistics) - The summary cards and dashboard-level stats
- [AI Insights](https://johnhenry.ie/plugins/order-lifecycle/docs/guide/ai-insights) - The Order analysis card in detail
- [Configuration](https://johnhenry.ie/plugins/order-lifecycle/docs/getting-started/configuration) - Plugin-wide settings that affect what this field shows

On this page
