For Developers

Architecture Overview

Estimated reading: 2 minutes

This document gives a high-level overview of how Content Lifecycle Manager is organized in code.

Main Structure

The plugin is organized into these main areas:

  • includes/Core
  • includes/Admin
  • includes/Editor
  • includes/Ideas
  • includes/Onboarding
  • includes/Support

Core

The Core layer contains the main lifecycle logic:

  • meta registration
  • computed status rules
  • maintenance action handling
  • capability checks

This is where the content lifecycle behavior is defined.

Admin

The Admin layer contains:

  • menu registration
  • admin screen rendering
  • admin-side AJAX handlers
  • shared UI elements such as the top bar

This is the main area for list views, overview screens, and settings screens

Editor

The Editor layer powers the Block Editor sidebar panel.

It includes:

  • script enqueue and localization
  • the pending action save flow
  • the editor-side maintenance UI

The save flow is intentionally explicit so normal post updates do not silently change lifecycle data.

Ideas

The Ideas layer contains:

  • custom post type registration
  • idea meta registration
  • ideas list screen
  • AJAX handlers for create, update, and convert

This feature is intentionally lightweight and separate from the main managed content tables.

Onboarding

The Onboarding layer handles setup for existing content.

It is responsible for:

  • setup UI
  • AJAX setup requests
  • batch processing of older content

Support

The Support layer contains shared helpers and utility classes used across the plugin.

Typical responsibilities include:

  • date formatting
  • sanitization helpers
  • option helpers

Request Flow Notes

The two most important behavior patterns in the plugin are:

  • computed lifecycle status rather than manually stored status
  • explicit maintenance actions rather than automatic review updates during normal saves

Those two choices shape much of the plugin behavior and should be preserved when extending the codebase.

Share this Doc

Architecture Overview

Or copy link

CONTENTS