Sidepipe for Craft CMS

Usage

The short version

Drop a Sidebar element into a field layout tab. Everything else in that tab renders in the element editor's sidebar instead of the content pane.

Step by step

  1. Settings → Entry Types → the type you want (or any other field layout designer — asset volumes, category groups, addresses all work the same way).
  2. Add a tab, or use one you have. Call it whatever you like; the name doesn't matter when you use a marker.
  3. From the UI Elements library on the right, drag Sidebar into that tab.
  4. Drag the fields you want in the sidebar into the same tab.
  5. Save, and open an entry.

The fields are now in the right-hand column with the author and the dates. The tab they came from has vanished from the tab bar — it has nothing left to show, so Craft drops it and authors never see an empty tab.

Choosing what moves

Click the Sidebar element's settings (the gear, or double-click it) for three options.

Fields to move

  • Everything in this tab — the default. The tab is a sidebar tab.
  • Everything below this marker — only the elements underneath it. Put the marker halfway down a tab and the top half stays in the content pane.

A second marker ends the first one's run, so a tab can hold two groups:

Details
├── Summary            → content pane
├── ▣ Sidebar  "Status"      (below-this-marker)
├── Featured?          → sidebar, under "Status"
├── ▣ Sidebar  "Links"       (below-this-marker, bottom)
└── Project URL        → sidebar, under "Links", below the dates

Heading

A label rendered above the group. Leave it empty and the fields sit flush against whatever is next to them, which is usually what you want for a single group.

Position

Above or below Craft's own block of author, post date, expiry date and slug. Default uses whatever the plugin settings say — above, unless you change it.

Order within a column follows the layout: a group from tab 1 renders before a group from tab 2.

Arranging by tab name instead

If you'd rather not add an element, name a tab Sidebar and it pipes with no marker at all. The names that do this are a plugin setting, so you can add your team's own vocabulary — Meta, Options, Publishing. Matching ignores case and spacing.

A marker always wins. If a tab has a marker, its name is not consulted.

Name-matched tabs use the default position and, unless you turn on Show tab names as headings, no heading.

What belongs in a sidebar

Fields that read as metadata and fit in a narrow column:

  • Lightswitches — Featured?, Hide from search, Sponsored
  • Dropdowns and radio buttons — Layout, Priority, Region
  • Dates and times — embargo dates, event dates, review dates
  • Short plain text — reading time, an external ID, a client name
  • Colour, money, number, range
  • Link fields, and small entry, category, asset and user relations

What technically works but shouldn't: Matrix fields, CKEditor and Redactor, wide tables. Sidepipe renders piped fields full width and keeps oversized content scrolling inside its own box rather than dragging the editor sideways, but a 240px column is not an editing surface for a body field.

UI elements come too

A Heading, a Tip, a Markdown block or a horizontal rule sitting in a piped group is piped with it, so you can annotate a sidebar group the same way you'd annotate a tab.

Conditions

Element conditions and user conditions are honoured exactly as in the content pane: a piped field whose condition doesn't match this element or this user is not rendered.

The Sidebar element carries the same visibility conditions as any other layout element, and they decide whether the move happens at all. Give the marker a condition of "only for admins" and everyone else sees those fields in the content pane, in the tab they live in, exactly as if the plugin were not installed. Nothing is hidden by a condition on a marker — it only chooses a column.

One difference. Craft re-renders the content pane as you type, so a conditional field there appears and disappears live; it does not re-render the sidebar, so a piped conditional field settles on the next page load. If a field's visibility needs to change under the author's hands, leave it in the content pane.

Where it doesn't apply

Sidepipe engages only where there's a sidebar to move fields into.

ScreenPipes?
Entry editor, full pageYes
Entry editor, slideoutYes
Asset, category, address editorsYes
Nested Matrix entry, cards view (opens its own editor)Yes
Nested Matrix entry, blocks view (renders inline)No — left in place
Content Block fieldsNo — left in place
Global setsNo — that screen has no sidebar
Tag groupsNo
User profile screenNo

Where it says no, the fields render in the content pane exactly as they would without the plugin. Nothing is ever taken out of a form without being put somewhere.