The Minn API
Every class under src/Minn/, read by reflection: 626 classes in 26 namespaces, 3050 public methods and 1530 internals. Signatures are the code's own; the prose is each class's docblock. A namespace page lists the public surface; a class page has everything, down to the source of each method. The engine regenerates this whenever the code changes, and its style suite fails when it has not.
Minn 8
The root namespace: the front door, the autoloader, the one database door, the REST error. Every other namespace sits one level below it.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| Autoloader | final class | 1 | PSR-4 for the Minn namespace: Minn\Http\Request lives at src/Minn/Http/Request.php. |
| Context | final readonly class | 4 | One request, as a value: the database door, who is asking, what they |
| Db | final class | 23 +2 | The one door to the database. Every query is a prepared statement; the |
| Engine | final readonly class | 2 +9 | The engine's front door. An unmodified wp-config.php ends by requiring |
| Html | final class | 7 | HTML, the front door for escaping and cutting markup: plain static calls, |
| Http | final readonly class | 8 +8 | Outgoing HTTP, a client handed to the code that uses it. An extension |
| Json | final class | 5 +2 | JSON in and out, for the engine and for code written for Minn: |
| RestError | final class | 5 | A WordPress-shaped error, thrown from anywhere and rendered once by the |
Minn\Admin 29
The minn-admin/v1 namespace and serving the Minn Admin app.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| ActivityChart | final readonly class | 2 | The overview's activity chart: published posts and pages plus every |
| ActivityFeed | final readonly class | 5 +4 | What happened lately, as the overview and the bell tell it: the caller's |
| AdminTypes | final class | 6 | Admin-facing type facts (viewable, labels, supports, the edit gate) live |
| App | final readonly class | 7 | The Minn Admin app on disk: the symlinked dev copy the engine serves the |
| AppController | final readonly class | 2 +3 | Serves Minn Admin from the engine: the path-routed shell (every |
| Appearance | final readonly class | 4 | A person's Minn Admin appearance: the colour scheme and its custom |
| BootPayload | final readonly class | 2 +7 | The window.MINN boot payload, assembled from the engine: the keys app.js |
| BundleController | final readonly class | 4 +1 | What the app bundle answers for: the user guide it carries, the |
| Dashboard | final readonly class | 4 +9 | The overview payload: stat cards, the activity chart, and the recent |
| EditorController | final readonly class | 4 | The editor's helpers in minn-admin/v1: the edit lock, and the template |
| Format | final class | 4 | The dashboard's number, size, age, and title formatting. |
| HiddenIntegrations | final readonly class | 5 | What a person hid from their own Minn Admin: the app's per-user map |
| LanguageChoices | final class | 1 +1 | The language picker's markup. English always leads the list and carries the |
| LanguageController | final readonly class | 5 +2 | Languages: what is installed, what a person reads in, what the site defaults to. |
| Notifications | final readonly class | 2 +7 | The bell feed: pending and recent comments, translation offers and a |
| OverviewController | final readonly class | 4 +5 | The Overview of minn-admin/v1: the payload, the drill-down behind one |
| PackagesController | final readonly class | 8 +1 | Adding and removing themes and extensions from the Extensions view. |
| PostListMarkup | final class | 2 | The markup a post list writes beside each post, as the reference writes |
| PreferencesController | final readonly class | 8 +4 | A person's own settings in minn-admin/v1: their appearance, the views |
| RenderController | final readonly class | 2 +1 | The editor's island previews: block markup rendered by the same |
| SessionsController | final readonly class | 3 +1 | A person's sign-in sessions, read from the same session_tokens store |
| SiteController | final readonly class | 4 +1 | The small Settings-view routes of minn-admin/v1: the site logo, the |
| StructureController | final readonly class | 3 +3 | The Structure view of minn-admin/v1: post types, taxonomies, and the |
| SystemController | final readonly class | 9 | The System view: diagnostics, the scheduled-post list, autoloaded options, and the logs. |
| ThemesController | final readonly class | 2 +3 | The theme inventory of minn-admin/v1: every theme on disk with its |
| Translations | final readonly class | 9 +5 | Languages for the admin. A person's locale is their `locale` user meta, |
| UpdatesController | final readonly class | 7 | The minn-admin/v1 update routes: offers, directory meta, the check, the installs, the auto-update lists. |
| UploadsSize | final readonly class | 2 +3 | How much the uploads folder holds, as Minn Admin 0.43 works it out and |
| V1Controller | final readonly class | 5 +1 | The boot burst of minn-admin/v1: the bell feed and its read marker, the |
Minn\Auth 19
Passwords, sessions, cookies, nonces, roles and capabilities.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| ApplicationPasswords | final readonly class | 10 +3 | Application passwords as the reference stores them: a serialized list in |
| AuthCookies | final readonly class | 6 | The three cookies a sign-in sets: the auth cookie on the admin and |
| AuthFailure | final readonly class | 3 | Why a request is not authenticated, as the reference's error code: a |
| Authenticated | final readonly class | 1 | A validated session: the user row and the raw session token behind it. |
| Authenticator | final readonly class | 9 | Resolves the current user two ways. A page load carries the cookie alone; |
| Capabilities | final readonly class | 7 +7 | The capability engine: a user's roles from {prefix}capabilities usermeta, |
| Cookie | final readonly class | 6 | The sign-in cookies: username|expiration|token|hmac, with |
| FastHash | final class | 3 | The reference's hash for high-entropy secrets ("$generic$", WordPress 6.8 |
| LoginThrottle | final readonly class | 4 +2 | Failed sign-ins per address, so a password guesser meets a wall: twenty |
| Nonce | final class | 5 | The wp_rest nonce: ten characters of HMAC-md5(tick|wp_rest|uid|token) |
| Password | final class | 4 +1 | The stored password scheme. A modern "$wp$2y$..." value is bcrypt over |
| PasswordReset | final readonly class | 5 +2 | Password reset keys in the reference's storage shape: user_activation_key |
| PortableHash | final class | 6 | The portable phpass hash ("$P$"), from the published algorithm: an |
| RegisteredCaps | final class | 2 | The capability names a plugin's post type or taxonomy registered, read |
| Roles | final class | 5 | Role definitions from the site's {prefix}user_roles option, parsed by a |
| Salts | final class | 4 | The site's own secret material, read from the constants wp-config.php |
| Sessions | final readonly class | 10 +5 | The session_tokens usermeta store: {sha256(token): {expiration, ip, ua, |
| SignIn | final readonly class | 8 +1 | The door itself: what a sign-in surface needs beyond checking a |
| TypeCapabilities | final readonly class | 7 | The capability names a post type's permissions are built from. Posts and |
Minn\Blocks 23
The block parser and renderer.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| Attributes | final readonly class | 1 | The JSON object a block delimiter carries, read in place. Rewriting one |
| Bindings | final class | 3 +4 | Block bindings (probe block-bindings): a block attribute bound to a |
| Block | final readonly class | 6 | One parsed block. A null name is freeform HTML between blocks. The |
| BlockName | final class | 1 | The block name rules: a string, lower-case, `namespace/name`. |
| BlockStream | final class | 17 +7 | Block markup read one token at a time, as the reference's streaming |
| Context | final class | 9 | What the template blocks render against: the resolution, the main |
| CoreBlocks | final class | 2 | The core block types' metadata as the reference registers them |
| Duotone | final class | 2 +2 | Duotone filters (probe block-supports): a CSS color read into its red, |
| Elements | final class | 3 +2 | Per-block element styles (style.elements in a block's attributes, the |
| ImageTags | final readonly class | 6 +13 | The attributes the reference adds to an <img> that carries a |
| Layout | final class | 7 +5 | The layout support's classes and rules (wp_render_layout_support_flag, |
| LayoutStyle | final class | 4 +7 | The CSS rules a block's layout writes (wp_get_layout_style, probe |
| Parser | final class | 3 | Parses block markup into a tree. The grammar is the delimiter comment: |
| QueryVars | final class | 1 +5 | The query variables a Query Loop block's context asks for, the way the |
| RenderState | final class | 38 | Per-request rendering state, owned by the renderer. The reference numbers |
| Renderer | final class | 20 +6 | Renders a block tree the way the reference renders post_content: |
| Selector | final class | 1 +1 | The CSS selector a block type declares for its root or for one feature, from its `selectors` map or the older per-support keys. |
| Serializer | final class | 4 | Parsed blocks back to markup. A core block is written by its short name; |
| States | final class | 8 | Block state styles (a block's style[":hover"] and the like, probe |
| StyleEngine | final class | 8 +8 | What a block's style object comes to, as the reference's style engine |
| Styles | final class | 5 +5 | The inline style and class names a block's "style" and preset |
| TemplatePartVariations | final class | 2 | The template part block's variations as the reference builds them (probes |
| Wrapper | final class | 1 | The opening tag of a dynamic block's wrapper, in the reference's class |
Minn\Blocks\Dynamic 8
Dynamic core blocks that render from data.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| Archives | final readonly class | 1 | core/archives: the months that have published posts, newest first, with their counts when asked (showPostCounts). |
| Dates | final class | 2 | Site-local dates the way the dynamic blocks print them. |
| LatestComments | final readonly class | 1 +1 | core/latest-comments: the newest approved comments with avatar, meta, and a 20-word excerpt. |
| LatestPosts | final readonly class | 1 | core/latest-posts: the newest published posts as a list, optionally dated. |
| Search | final readonly class | 1 | core/search: the site search form. The button sits outside or inside |
| SocialLinks | final class | 1 +3 | core/social-links and core/social-link. The list keeps its stored |
| SyncedPattern | final readonly class | 1 | core/block: a synced pattern, rendered from the wp_block post it references. |
| TagCloud | final readonly class | 1 | core/tag-cloud: non-empty tags by name, sized from 8pt to 22pt in |
Minn\Blocks\Dynamic\Theme 6
The template blocks a block theme composes with.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| Comments | final readonly class | 2 +15 | comments, comments-title, comment-template, the comment-* blocks, and the comment form. |
| Navigation | final readonly class | 2 +22 | navigation, navigation-link, page-list. A navigation block's items come |
| PostBlocks | final readonly class | 1 +12 | The post-* blocks: they render the context's current post. |
| QueryBlocks | final class | 1 +13 | query, post-template, query-title, query-no-results, query-pagination, query-total. |
| Structure | final readonly class | 1 +5 | template-part, pattern, site-title, site-tagline, site-logo. |
| TermBlocks | final readonly class | 1 +4 | term-name, term-count and term-description: the term a block's context |
Minn\Cli 18
The wp verbs the engine answers itself.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| AssetUpdate | final class | 2 +13 | Shared wording for `wp plugin update` and `wp theme update`. Captured |
| CacheCommand | final class | 1 | `wp cache flush`: the engine has no object cache, so this is a no-op success. |
| Commands | final class | 1 +2 | The verbs the engine answers to. Every one is registered for the |
| CoreCommand | final class | 3 +2 | WP-CLI's core verbs where a host's automation meets a Minn site. A Minn |
| CronCommand | final class | 7 +4 | `wp cron`: the events, schedules, and spawn test a host and a fleet ask |
| DirectorySearch | final class | 1 | Shared wording for `wp theme search` and `wp plugin search`. The |
| Installer | final class | 8 +6 | The swap, both ways. Install parks WordPress's own files beside the |
| MaintenanceCommand | final class | 4 +1 | `wp maintenance-mode`: the `.maintenance` marker in the webroot. The |
| MinnCommand | final class | 12 +3 | Identifies the engine. |
| OptionCommand | final class | 4 +3 | Options, read and written straight to the options table. Serialized |
| PackageInstaller | final readonly class | 3 +4 | Puts a theme or a plugin on disk for `wp theme install` and `wp plugin |
| PluginCommand | final class | 9 +4 | `wp plugin list|install|update|activate|deactivate|delete`: the inventory and the fleet's install/update/delete. |
| Preflight | final class | 3 +14 | What a site will and will not get from the engine, before anything |
| RewriteCommand | final class | 2 | `wp rewrite flush|structure`: permalink_structure is the engine's |
| Runtime | final class | 3 +1 | The engine, booted for a command: reads the site's wp-config.php (which |
| SearchReplaceCommand | final class | 1 +3 | `wp search-replace`: walks every string column, including serialized |
| ThemeCommand | final class | 8 +2 | `wp theme list|install|update|activate|delete`: the inventory CaptainCore |
| UserCommand | final class | 6 +3 | Users: the list and get views, and the one-time login link. |
Minn\Content 42
The repositories and records: posts, users, terms, comments, and the render pipeline.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| Autop | final class | 1 +9 | Classic-content paragraphing (wpautop): blank lines become paragraphs, |
| Blocks | final class | 3 | The content pipeline's front door: block markup goes through the block |
| Clickable | final class | 2 +2 | Bare addresses in text made links (make_clickable, probe |
| CommentClasses | final class | 1 | The class tokens a rendered comment carries: its type, its author, odd/even and thread alternation, depth, then the caller's extras. |
| CommentRecord | final readonly class | 11 | One row of the comments table, read by name: $comment->author, ->content, |
| Comments | final readonly class | 20 | Reads and writes over the comments table. |
| ContentScan | final class | 7 +1 | What a site's stored content asks of the engine: shortcodes, block |
| Emoji | final class | 2 +2 | Emoji as the reference's mail and feeds carry them, from the list the |
| Excerpt | final class | 1 +4 | The reference's generated excerpt, as captured from probe posts: |
| Inventory | final readonly class | 5 +3 | Plugins, themes, must-use plugins, and drop-ins as they sit on disk. |
| Links | final readonly class | 4 +3 | The links manager's table, as get_bookmarks and wp_insert_link read and |
| MediaShortcodes | final class | 3 +9 | The [video] and [audio] shortcodes as the reference prints them: a |
| MenuItem | final readonly class | 0 | One classic nav_menu_item, fields resolved from the post, its |
| Menus | final readonly class | 16 +10 | Classic nav_menu terms and nav_menu_item posts. The front uses these |
| MoreTag | final class | 1 | The `<!--more-->` marker that splits a post into the part a listing shows |
| NoteMarkers | final class | 1 +1 | The markers the block editor's notes leave in content: a mark element |
| ObjectLabels | final class | 1 | A post type's or taxonomy's labels from its own and the defaults |
| Page | final readonly class | 5 | One page of a listing: the rows on it and how many rows the whole |
| PasswordGate | final class | 6 | A password-protected post on the front end: its body is the password |
| PersonalData | final class | 2 | Personal data as the privacy tools hand it over (probe privacy): an |
| Playlist | final class | 2 | The [playlist] shortcode's markup as the reference prints it (probe |
| PluginState | final readonly class | 4 +1 | Switching plugins on and off: a WordPress plugin file goes through the |
| PostClasses | final class | 2 | The class list a post carries on its article element, in the reference's |
| PostRecord | final readonly class | 15 | One row of the posts table, read by name. The columns keep their |
| PostSlugs | final readonly class | 1 +3 | Which slug a live post may take beside the others, as the reference |
| PostStatus | enum | 4 | The statuses a post row can hold; the value is the column's own spelling. |
| PostWriter | final readonly class | 33 +5 | Every write to the posts table and its satellites: rows, meta, term |
| Posts | final readonly class | 32 +9 | Reads over the posts table. A post comes back as a PostRecord; a listing |
| Reader | final class | 5 | Who is reading this request: their user id, whether they may read |
| Revisions | final readonly class | 4 +1 | Revision rows: the plain snapshots and the per-author autosave slots. |
| RowCache | final class | 7 +1 | Rows read once a request: posts, their terms, users, and every object's |
| Site | final readonly class | 9 | Site-wide options and the site's clock. |
| SiteIcon | final readonly class | 4 | The site icon: the attachment the site_icon option names, as the file |
| Slug | final class | 4 | |
| TagBalancer | final class | 1 +3 | Closes what markup leaves open and drops what it closes without opening, |
| TermLinks | final class | 2 +1 | A post's terms rendered as links, in the two shapes the reference |
| TermRecord | final readonly class | 9 | One term with its taxonomy row, read by name: $term->name, ->slug, |
| Terms | final readonly class | 14 +3 | |
| TextFilters | final class | 9 +3 | The small text filters the reference runs over content, titles and |
| Texturize | final class | 11 +3 | The texturize subset the reference applies to rendered text: straight |
| UserRecord | final readonly class | 9 | One row of the users table, read by name. Columns keep their WordPress |
| Users | final readonly class | 23 +3 |
Minn\Cron 1
Scheduled publishing.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| Cron | final readonly class | 4 +8 | The engine's scheduled work: scheduled posts go live when their time |
Minn\Extension 8
The extension contract and its seams.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| Extension | interface | 1 | What a Minn extension is: a class the engine constructs once per request |
| Extensions | final class | 2 | Where the engine looks for the seams an extension registered. The |
| Loader | final class | 6 +1 | Finds extensions under wp-content/plugins and wp-content/mu-plugins, |
| Manifest | final readonly class | 1 +1 | minn.json, read as data. A folder under wp-content/plugins (or |
| Registrations | final readonly class | 0 | Everything the extensions registered for this request, handed from Seams to the runner once. |
| SeamRunner | final readonly class | 8 | The engine's side of the seams: what the loader collected, called at the |
| Seams | final class | 12 | Where an extension can take part in a request: eight typed registrations, |
| Shortcodes | final class | 2 | The shortcode syntax in rendered content: [tag], [tag attr="v" flag], |
Minn\Feed 8
| Class | Kind | Methods | Summary |
|---|---|---|---|
| Charset | final class | 2 +2 | A feed document as UTF-8. The encoding comes from a byte-order mark, |
| Dates | final class | 1 | Feed dates (RFC 822, W3C, and the looser forms feeds carry) as Unix timestamps; a date without a zone is UTC. |
| Document | final readonly class | 9 | A parsed feed: the tree and the format it was recognized as (the |
| FeedError | final class | 0 | A feed that could not be read: the message is the one the reference reports. |
| Iri | final class | 2 +5 | URLs in feeds: a reference resolved against its base (RFC 3986), then |
| Locator | final class | 2 +1 | Feed autodiscovery: the feeds an HTML page names in its |
| Parts | final class | 4 +1 | The repeating parts of a feed element read out of the tree as raw |
| Tree | final class | 1 +8 | A feed document parsed into the nested arrays plugin code reads through |
Minn\Front 44
URL resolution, permalinks, feeds, sitemaps and the public page.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| AdminBar | final readonly class | 3 +18 | The Minn bar on the public site: the same server-rendered chrome the |
| ArchiveAddresses | final readonly class | 7 +1 | The archives an address may stand for, as the reference answers them: |
| Archives | final readonly class | 2 +1 | The archive periods wp_get_archives lists: months, years, days and weeks |
| AssetsController | final readonly class | 3 | The engine's own static assets, served under a reserved path. |
| AttachmentAddresses | final readonly class | 4 +1 | The addresses an attachment's page answers to besides those its rules |
| Calendar | final readonly class | 1 +5 | One month as the calendar widget and block draw it: a table whose caption |
| CalendarLabels | final readonly class | 2 +1 | The words a calendar prints: weekday names Sunday first, the short form |
| Canonical | final class | 1 +1 | Where a URL should redirect to, by the engine's own resolution: the |
| CommentPostController | final readonly class | 1 +2 | wp-comments-post.php: the comment form's target. The reference's |
| CustomLogo | final class | 1 | The site logo a theme prints, as get_custom_logo builds it (probe |
| EmbedCard | final class | 6 | The parts of a post's embed card the reference's embed template prints, |
| FeedController | final readonly class | 2 +2 | The feeds, wherever a request asks for one: the feed var of the rule its |
| FeedTags | final class | 7 +1 | The template tags a feed is written with that take more than a line, as |
| FeedTemplates | final class | 1 +15 | The feed templates do_feed_* loads, written from the reference's output |
| FeedWriter | final class | 6 | A feed as it is written: text as given, and what each template tag and |
| FrontController | final readonly class | 3 +2 | The public site. One catch-all route: resolve the URL, then either |
| Kind | enum | 0 | What a public URL resolved to. |
| ListingLinks | final class | 4 | The prev/next links a paged listing prints: which page sits either side of |
| Maintenance | final class | 1 | Maintenance mode, as hosting tools and updaters switch it on: a |
| PageLinks | final class | 1 | The links between the pages of a post split with <!--nextpage-->, as |
| Pagination | final class | 2 | Numbered page links in the reference's shape: previous, the end and |
| Permalinks | final readonly class | 18 +3 | Builds public URLs from the site's permalink structure. With an empty |
| PostEmbed | final class | 5 +1 | A post as other sites embed it, the oEmbed provider side, as the |
| PostNavigation | final class | 3 +1 | The links to the posts either side of this one, and the nav block that |
| PrintedResponse | final class | 1 +1 | A response WordPress's handlers print themselves (a sitemap, robots.txt), |
| ProbeController | final readonly class | 5 | The surface monitors, crawlers, and hosting checks hit that is not a |
| QueryMoves | final readonly class | 1 +6 | Where the root's archive query forms move under pretty permalinks, as |
| Redirects | enum | 3 | Whether a resolution may answer with a canonical redirect. A GET or HEAD |
| Renderer | final readonly class | 2 +2 | The interim public theme: one clean template until the block-theme |
| RequestParse | final class | 3 | The query vars the reference's request parse sets for an address |
| Resolution | final readonly class | 15 | The outcome of resolving a public URL: which kind of thing it names, |
| Resolver | final readonly class | 5 +12 | Turns a public URL into a Resolution the way the reference's request |
| RuleRoutes | final readonly class | 1 +7 | What a matched rewrite rule's query vars name, as the reference's main |
| RuleTable | final class | 2 +4 | An address read as WordPress's request parse reads it (suites |
| SingleAddresses | final readonly class | 3 | The addresses a single answers to besides its own, as the reference |
| SingleQueries | final readonly class | 1 +3 | The single a query string asks for, as the reference's request parse and |
| SitemapController | final readonly class | 5 +1 | The sitemap index, its pages, and the two stylesheets, as the |
| SitemapRequest | final class | 2 +2 | A sitemap request at template_redirect, as the reference's sitemaps |
| SitemapXml | final class | 2 +3 | The two sitemap documents, index and URL set, from entry maps; one |
| Sitemaps | final class | 3 +1 | What the sitemaps share with WP_Sitemaps, which serves them: the two |
| TermLists | final class | 5 +1 | A term's parent chain and the tag cloud, built from term rows the caller |
| ToolbarMarkup | final class | 5 | WP_Admin_Bar's markup, piece by piece, as the reference prints it (probe |
| ToolbarMenus | final class | 16 +4 | The nodes WordPress puts on the toolbar itself, as the reference adds |
| ToolbarTree | final class | 1 +3 | WP_Admin_Bar's nodes bound into the tree they print as, as the reference |
Minn\Html 7
The HTML tag processor.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| Decoder | final class | 4 +3 | Character reference decoding for text and attribute values: numeric and |
| Edits | final class | 19 +3 | The edits pending on the current token: attribute sets and removals, |
| Escaped | final readonly class | 0 | An attribute value that comes already escaped (a URL through esc_url), written as it is. |
| Scanner | final class | 10 +2 | Reads one token's shape out of raw HTML at an offset: a tag with its |
| TagQuery | final readonly class | 2 | A tag processor's next_tag() query: a tag name (any case), a class, the |
| Tags | final class | 35 +10 | A streaming HTML tokenizer with in-place edits: every token in document order, attributes decoded, |
| TokenMap | final class | 4 +1 | A map from words to replacements that reads the longest word at a place |
Minn\Html\Tree 13
| Class | Kind | Methods | Summary |
|---|---|---|---|
| BodyRules | final class | 2 +32 | The "in body" insertion mode, with select handled in body as the current |
| Builder | final class | 43 +9 | The HTML tree construction algorithm over the engine's tokenizer, as the |
| Compat | final class | 2 +1 | The compatibility mode a doctype indicates, by the identifier lists in |
| Event | final readonly class | 1 | One step of the walk the HTML processor reports: a node opened (pushed) |
| ForeignRules | final class | 1 +5 | The rules for content in SVG and MathML: text and comments stay in the |
| Formatting | final class | 8 +1 | The list of active formatting elements, with its markers (null): the |
| HeadRules | final class | 1 +23 | The insertion modes around the body: initial (doctype and the |
| Node | final class | 11 | A node the tree builder places: an element (named as the HTML API |
| OpenElements | final class | 12 +1 | The stack of open elements and the spec's scope tests over it: an |
| Serializer | final class | 5 +1 | Normalized HTML for the processor's walk, token by token: tag names |
| TableRules | final class | 1 +27 | The table insertion modes: in table (and its text), in caption, in |
| Token | final readonly class | 5 | A token as the tree builder reads it: a tag (name upper-cased), a run of |
| Unsupported | final class | 0 | Where the reference's HTML processor stops: markup whose tree it does |
Minn\Http 37
Request, response, routing, and the outgoing client.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| Access | enum | 0 | Who a route is for. The six answers every route gives, so the |
| Args | final class | 1 | The parameters a route accepts, as the reference describes them in the |
| CertificateName | final class | 3 | Whether a TLS certificate names a host: a wildcard only as a whole first |
| CookieText | final class | 6 | Set-Cookie text and the matching rules a cookie jar applies: parsing a |
| Destination | final readonly class | 3 +3 | Where Minn\Http lets a request go. Only http and https; when hosts are |
| DiePage | final class | 1 +1 | The page wp_die shows a browser, as the reference draws it (probe |
| Download | final readonly class | 1 | A file the engine fetches for itself (a package, a language pack), over |
| Envelope | interface | 1 | What runs around a matched route once the router knows the route takes |
| Exchange | final readonly class | 7 | What came back: the final response's status, headers (repeats as lists), Set-Cookie values, and body, or the transport error. |
| Failure | final class | 10 +5 | What the public sees when the engine cannot answer: a plain page with no |
| Fake | final class | 5 +1 | Answers requests in place of the network, and keeps what was sent. A test |
| Ipv6 | final class | 3 | IPv6 addresses as text: written out in full (eight groups, or six and an |
| IriParts | final readonly class | 7 +4 | An IRI (a URL that may carry non-ASCII text) split into its parts and |
| Kernel | final readonly class | 1 +1 | The edge. Turns a request into a response through the router and turns |
| LegacyHeaders | final class | 2 | WP_Http's legacy readers, kept for plugins that still call them (probe |
| Location | final class | 3 +1 | Where a redirect leads: a Location header made absolute against the URL that sent it. |
| Matched | final readonly class | 0 | A route the router matched to a request and whose policy it judged: the |
| MediaType | final class | 1 | Reading the media types a request names in its Accept and Content-Type headers. |
| Method | enum | 3 | |
| Outbound | final readonly class | 2 | One outgoing HTTP request, normalised: the transport needs nothing else. |
| Policy | final readonly class | 6 | What a route requires of its caller, as data on the route: the router |
| Punycode | final class | 3 +3 | Internationalized host names in ASCII: each label that is not ASCII is |
| RawResponse | final class | 6 | An HTTP response as text, the way the Requests library hands it from |
| Refusal | interface | 1 | A refusal a route judges after its arguments and before its policy: the |
| Request | final readonly class | 11 | An immutable picture of the incoming request. Built once from the PHP |
| RequestFailed | final class | 0 | Thrown by Exchange::throw() when no response arrived or it was not a 2xx; the exchange rides along. |
| RequestsNames | final class | 1 | The Requests library's PSR-0 class names (Requests_Exception_HTTP_404, |
| Response | final readonly class | 12 | What a handler returns. Nothing is written to the client until the |
| Route | final readonly class | 3 | Declares a handler method as a route. The policy lives here, as |
| RouteMiss | final class | 0 | A handler declining a request its pattern matched: the router swallows |
| RouteParams | interface | 1 | The parameters a route takes when they depend on what its captures name |
| RouteRow | final readonly class | 3 +1 | One line of the route table: what a route is, who it is for, and what it |
| Router | final class | 6 +7 | Matches a request to a #[Route] on one of the registered handler |
| StatusText | final class | 1 | The reason phrase a status line carries for each code, as the reference's |
| Subject | enum | 2 | The record a route capture names, so a policy can have it looked up |
| Transport | final class | 1 +4 | The engine's outgoing HTTP transport over curl: it sends exactly what an |
| TrustedProxies | final readonly class | 5 +3 | Which addresses in front of the engine may speak for the client. |
Minn\I18n 13
| Class | Kind | Methods | Summary |
|---|---|---|---|
| Catalog | final readonly class | 6 | One translation file's contents: its headers as written, its messages |
| Gettext | final class | 7 +1 | Translation as plugins see it (__, _x, _n and the rest map here): the |
| LegacyPluralForms | final class | 2 +6 | The plural expression reader the old POMO library carries (Plural_Forms), |
| LocalDates | final class | 1 | A date in the site's language, as the reference's wp_date writes one: |
| LocaleStack | final class | 6 | The locales a request switched into, innermost last, each with the user |
| MoFile | final class | 2 +4 | The GNU gettext binary catalog (.mo), read and written. The file opens |
| PhpFile | final class | 1 | The PHP translation file (.l10n.php): a file that returns an array of its |
| PluralExpression | final class | 2 +5 | The C subset a Plural-Forms header writes its rule in: the number n, |
| PluralRule | final readonly class | 4 | A language's plural rule from its Plural-Forms header: how many forms it |
| ScriptTranslations | final class | 5 +1 | Where a script's JSON translations are found, and how they reach the |
| SiteLanguage | final class | 3 | The site's language as pages declare it: the locale in force (a switched |
| TextDomains | final class | 19 +1 | The text domains this request knows: each domain's files in the order they |
| TranslationFiles | final class | 3 | Which file a request for a .mo path reads, and reading it. Asked for |
Minn\Login 5
/wp-login.php and the sign-in surface.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| LoginController | final readonly class | 2 +22 | Signing in. The page people see is /minn-admin/login: the form, the |
| LoginForm | final class | 10 +2 | The sign-in page markup. |
| LoginHooks | final readonly class | 10 | The sign-in as plugins see it, when they are loaded. The credentials go |
| LoginNotices | final readonly class | 9 +1 | What a sign-in page tells the reader, held as the reference's pages hold |
| ServeLogin | final class | 0 | Thrown by the wp-login.php shape file when plugin code require's it |
Minn\Mail 24
Sending mail and the notices the engine sends.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| AddressRules | final class | 4 +1 | Email addresses: the checks a mailer can apply (PHP's filter, the |
| ChangeNotices | final class | 3 | The notices the reference mails a user when their password or email |
| Composer | final class | 8 +11 | A message as the reference's mailer writes it: the header block (Date, |
| DataLines | final class | 1 | A message cut into the lines SMTP DATA sends. Any line break (CRLF, CR |
| DebugOutput | final class | 2 +2 | Where a mailer's debug text goes, as its Debugoutput setting names it: |
| Dkim | final class | 6 +1 | DKIM signatures (RFC 6376) as the reference's mailer writes them: |
| Draft | final readonly class | 3 | Everything a message is composed from: the transport it goes out on |
| HeaderWords | final class | 4 +3 | Header text as mail carries it (RFC 2047): left alone when it is plain |
| HostEntry | final readonly class | 2 | One entry of a mailer's Host setting ("host", "host:port", |
| HtmlMessage | final class | 5 | What a mailer reads out of an HTML message: the images it can carry |
| MailHeaders | final readonly class | 2 +2 | The headers argument of wp_mail() read the way the reference reads it: |
| MailLog | final class | 3 | The engine's development transport: each message as one JSON line |
| MailSettings | final readonly class | 3 | How mail leaves the site, from the minn_mail option (JSON or a serialized |
| Mailer | final readonly class | 4 +3 | Sends a Message through the configured transport. Failures are logged |
| MailerStrings | final class | 2 +1 | The mailer's English messages, keyed as plugins look them up |
| Message | final readonly class | 1 | One outgoing plain-text email. |
| MimeTypes | final class | 2 | The MIME type a mailer gives an attachment by its file extension (the |
| Notices | final readonly class | 5 +1 | The messages the engine itself sends, worded as the reference words them |
| PathParts | final class | 1 | A path's parts the way a mailer names attachments, safe for multibyte |
| Smime | final class | 1 | S/MIME signing of a composed MIME entity with a certificate and key on |
| Smtp | final readonly class | 1 | Delivery over SMTP for the engine's own mail when WordPress's mail |
| SmtpSession | final class | 21 +9 | One SMTP conversation as the reference's client holds it: the socket, |
| TextWrap | final class | 3 +5 | Word wrapping for mail text. Lines break at spaces once they would pass |
| Transfer | final class | 7 | Body text in a content transfer encoding, and the line-ending helpers |
Minn\Media 13
Uploads, image sizes and attachment metadata.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| AvifInfo | final class | 1 +5 | An AVIF file's primary image as wp_get_avif_info reports it (probe |
| Canvas | final readonly class | 13 +4 | One GD bitmap and the operations the media layer needs on it. Every |
| Gallery | final class | 3 +3 | The classic `[gallery]` shortcode's markup. Every gallery on a page is |
| Icons | final class | 1 +2 | The icon a file type is shown with, as wp_mime_type_icon finds it (probe |
| ImageMime | final class | 1 | An image file's real type from its first bytes, as the reference sniffs |
| Kind | final class | 2 | Whether an attachment is an image, audio, video, or a given extension, judged by its MIME type first and its file extension second. |
| Metadata | final class | 3 | The _wp_attachment_metadata blob: parsed by scanning for the shapes it |
| PhotoMeta | final class | 1 +6 | A photo's own description, read as the reference's wp_read_image_metadata |
| Sizing | final class | 8 +2 | The image size arithmetic the media functions share: the crop or scale a |
| Upload | final readonly class | 5 | One file arriving for the library, on either transport: a multipart |
| Uploads | final readonly class | 8 | The uploads directory: paths, URLs, the allowed types, and landing a file. |
| WebpInfo | final class | 1 | A WebP file's size and kind from its first 40 bytes, as wp_get_webp_info |
| Writer | final readonly class | 3 | Where the media library's files live, as a REST upload names them: a |
Minn\Ops 18
| Class | Kind | Methods | Summary |
|---|---|---|---|
| Archive | final class | 4 +1 | A zip unpacked the safe way, for the plugin and theme installer and for |
| AutoUpdates | final readonly class | 2 +1 | Whether per-item auto-updates apply to plugins or themes, as the |
| Changelog | final class | 4 +1 | A changelog read from its repository rather than shipped: a Minn release |
| CoreStatus | final readonly class | 4 | The core the app's update banner and chip speak of, which on Minn is |
| Diagnostics | final readonly class | 4 +16 | The System view's facts about this install: the engine, PHP, the |
| Directory | final class | 3 | The Minn update service, https://updates.minn.run: the one place the |
| DirectoryApi | final readonly class | 1 +2 | plugins_api() and themes_api() as plugins call them and answer them |
| EngineChecksums | final readonly class | 1 +6 | Checks a Minn install's files against the release they claim to be, the |
| EngineUpdate | final readonly class | 4 +3 | Replaces the running engine with a published release. The release's |
| InstalledSoftware | final readonly class | 3 | What is installed, as the System view lists it: every extension and |
| Logs | final readonly class | 8 | The log files the System view can read and clear: the debug log the |
| Packages | final readonly class | 17 +8 | Putting plugins, themes and extensions on disk. Plugins and themes come |
| Release | final readonly class | 3 | One published Minn release as the update service describes it (and as |
| Releases | final class | 5 +1 | Whether a newer Minn is out, asked of the Minn update service at most |
| ShapeFiles | final class | 3 +5 | The files an install lays at the webroot for tooling to find: the shape |
| Unzip | final readonly class | 2 +3 | An archive unpacked as unzip_file() unpacks it (probe unzip-file): into |
| Updates | final class | 19 +8 | Update offers for the site's plugins and themes from the directory, asked |
| UpgraderRun | final readonly class | 2 +3 | The engine's own installs and updates, run through the reference's |
Minn\Query 10
Shared SQL fragments.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| AuthorPostsSql | final class | 1 | get_posts_by_author_sql as the reference writes it: for each type, its |
| CommentOrder | final class | 4 +2 | WP_Comment_Query's ORDER BY and LIMIT as the reference writes them |
| DateSql | final class | 13 +4 | The WHERE fragment of a date query in the reference's shape: before and |
| MetaSql | final class | 11 +7 | The JOIN and WHERE fragments of a meta query in the reference's shape: |
| MimeWhere | final class | 1 +1 | wp_post_mime_type_where as the reference writes it (probe wp-query-sql): |
| NetworkSql | final class | 15 +6 | The SQL WP_Site_Query and WP_Network_Query build from their variables |
| PostOrder | final class | 3 +2 | WP_Query's ORDER BY as the reference writes it (probe wp-query-sql): the |
| PostSearch | final class | 6 | WP_Query's search as the reference writes it (probe wp-query-sql): the |
| Sql | final class | 5 | Literal quoting for the SQL fragments the query classes hand to plugins, |
| TaxSql | final class | 8 +2 | The JOIN and WHERE fragments of a taxonomy query in the reference's |
Minn\Rest 85
The wp/v2 surface: shapes and controllers.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| Api | final readonly class | 25 +6 | The REST API: wires the controllers for one request and dispatches a |
| ApplicationPasswordsController | final readonly class | 7 +5 | wp/v2/users/{id}/application-passwords: list, create, rename, delete, |
| ArgCheck | final readonly class | 2 +3 | Judges a route's declared arguments against the request before the |
| BatchController | final readonly class | 1 +7 | batch/v1 as the reference answers it (probe rest-batch): up to 25 |
| BatchRequest | final class | 1 | The requests a batch payload names, normalised into descriptors the |
| BlockRendererController | final readonly class | 1 +3 | wp/v2/block-renderer as the reference answers it (probe |
| BlockTypesController | final readonly class | 4 +4 | wp/v2/block-types as the reference answers it (probe rest-block-types): |
| BlocksController | final readonly class | 5 | wp/v2/blocks: synced patterns and reusable blocks, stored as wp_block |
| Caller | final class | 14 +1 | Who is making this REST call. Resolved once from the cookie and nonce; |
| Catalogue | final class | 2 +1 | The route table read from the classes alone: every #[Route] under |
| ClientSchema | final class | 2 +3 | A JSON schema trimmed for a client (probe json-schema): only the keywords |
| CommentListArgs | final class | 1 | The WP_Comment_Query arguments a comment list request makes, as the |
| CommentObject | final readonly class | 2 +1 | The wp/v2 comment object; edit context adds the moderation-desk fields. |
| CommentsController | final readonly class | 5 +7 | wp/v2/comments: the status tabs with pagination headers, single, |
| Context | enum | 2 | The view a REST caller asked for. View is the public shape, edit adds the |
| DeclaredPostsController | final readonly class | 5 +1 | wp/v2/{rest_base} for extra post types declared by an active extension. |
| DeclaredTermsController | final readonly class | 5 | wp/v2/{rest_base} for the taxonomies plugin code registers to show in |
| Embed | final class | 4 +6 | The _embed decoration and the embed context. Every embeddable link in an |
| EngineRoutes | final class | 2 | The engine's own REST routes in the reference's regex form, for the |
| ExistingPost | final class | 1 | A post created with an id names one that exists: refused with |
| Fields | final readonly class | 5 +1 | The _fields response filter. Dot paths descend ("title.rendered"); the |
| GlobalStylesController | final readonly class | 6 +6 | wp/v2/global-styles: the site editor's saved styles (one post per |
| GlobalStylesObject | final readonly class | 3 +2 | The wp/v2/global-styles item, theme, and revision shapes. |
| IndexController | final readonly class | 2 | The API index at /wp-json/: the site facts monitors read (name, url, |
| InstalledThemesController | final readonly class | 3 +6 | wp/v2/themes as the reference answers it (probe rest-themes): the |
| Links | final class | 3 | Response link relations compacted through CURIEs: a rel that matches a CURIE's template becomes `name:suffix`, and the used CURIEs ride along. |
| LiveSettings | final readonly class | 3 +1 | wp/v2/settings with plugins loaded, served from the registered settings |
| MediaController | final readonly class | 5 +7 | wp/v2/media: list, single, upload on both transports (multipart field |
| MediaObject | final readonly class | 3 +2 | The wp/v2 media object, view and edit context. |
| MenuItemObject | final readonly class | 1 | The wp/v2/menu-items resource. |
| MenuObject | final readonly class | 1 | The wp/v2/menus resource: a nav_menu term plus locations and auto_add. |
| MenusController | final readonly class | 12 +6 | wp/v2/menus, menu-items, and menu-locations. Viewing needs edit_posts; |
| NavigationController | final readonly class | 5 | wp/v2/navigation: the block theme's navigation menus, stored as |
| ParamCheck | final class | 2 +1 | The required / validate / sanitize pass over a request's declared arguments. |
| PluginsController | final readonly class | 6 +9 | wp/v2 plugins: what sits in wp-content/plugins, in the reference's |
| PolicyGate | final readonly class | 2 +6 | Judges a route's policy against the caller, with the reference's |
| PostCollectionParams | final class | 5 +9 | A post type's collection parameters as the reference builds them for its |
| PostListArgs | final class | 2 +5 | The WP_Query arguments a post list request makes, as the reference makes |
| PostObject | final readonly class | 9 +12 | Builds the wp/v2 post and page objects in the reference's shape: the |
| PostsController | final readonly class | 5 +3 | wp/v2 posts and pages, read side. |
| PostsWriteController | final readonly class | 8 +17 | wp/v2 posts and pages, write side: create, update, trash, and force |
| RegisteredFields | final class | 4 +4 | The fields plugin code adds to an object type with register_rest_field, |
| RegisteredPostFields | final readonly class | 1 +1 | The REST object of a post whose type plugin code registered (probe rest-plugin-types), built by what the type supports. |
| RegisteredType | final readonly class | 5 | A post type plugin code registered, as its REST object follows it |
| RenderedFields | final class | 5 +1 | A post's rendered title, content and excerpt as a REST response carries |
| Reply | final class | 5 | JSON responses in the reference's shape: its header set, its json_encode |
| RestMeta | final class | 12 +7 | An object's meta field over REST, from the keys registered to show |
| RestUrl | final readonly class | 3 | REST URLs in the form the reference emits for the site's permalink mode: |
| RevisionsController | final readonly class | 7 +6 | wp/v2 revisions under posts, pages, patterns and navigation menus, and |
| RouteArgs | final class | 1 | The argument groups a route registers with, filled the way register_rest_route fills them. |
| RouteCatalogue | final readonly class | 3 | The routes the engine serves, described in the reference's shape for the |
| RouteIndex | final class | 1 +1 | The description of one route the REST index publishes: namespace, methods, endpoints with their argument schemas, self link. |
| RouteMatch | final class | 2 | Finds the registered handler for a method and path among the runtime's route table. |
| RouteTable | final class | 1 | The registered endpoints in dispatch shape: one handler list per route, methods as a set, non-numeric keys lifted into the route's options. |
| RuntimeEnvelope | final readonly class | 1 +6 | The REST server's filters around one of Minn's own routes, as the |
| RuntimePrepare | final class | 5 +3 | An item a REST response carries, through the filter the reference runs |
| RuntimeRoutes | final class | 19 +10 | Routes plugin code registered with register_rest_route(), answered |
| Schema | final readonly class | 10 +10 | JSON-schema handling the way the REST API's argument validation does it: |
| SchemaChoices | final readonly class | 4 +2 | anyOf and oneOf the way the REST API's validation judges them (probe |
| SchemaData | final class | 1 | REST schemas captured from the reference for the facade's controller |
| SchemaValues | final class | 18 +1 | The value side of JSON Schema, as the reference applies it: what counts |
| SearchController | final readonly class | 1 +5 | wp/v2 search over published content: id, title, url, type, and the |
| Services | final class | 53 +1 | The objects one REST request shares, each made once, on first use, from |
| Settings | final readonly class | 2 | The registered settings the Settings views read and write, mapped to |
| SettingsController | final readonly class | 1 | wp/v2/settings: read and write, both behind manage_options; with plugins loaded, every registered setting (LiveSettings). |
| SidebarsController | final readonly class | 7 +4 | wp/v2/sidebars and wp/v2/widget-types as the reference answers them |
| StatusesController | final readonly class | 2 +4 | wp/v2/statuses as the reference answers it (probe rest-statuses): every |
| Subjects | final readonly class | 3 +2 | Whether the record a route capture names exists, for the policy gate to |
| Taxonomies | final class | 4 | The taxonomy registry the wp/v2 surface describes: the core set seeded |
| TemplateObject | final readonly class | 2 +1 | The wp/v2/templates and wp/v2/template-parts resource. |
| TemplatesController | final readonly class | 12 +13 | wp/v2/templates and wp/v2/template-parts: the block theme's templates as |
| TermCollectionParams | final class | 1 | A taxonomy's term list parameters as the reference declares them (probe |
| TermFilters | final class | 1 +1 | A term a REST read answers with, as plugin code filters it on the |
| TermListArgs | final class | 1 | The get_terms arguments a term list request makes, as the reference |
| TermObject | final readonly class | 4 +2 | The wp/v2 category and tag objects. |
| TermsController | final readonly class | 6 +2 | wp/v2 categories, tags, and pattern categories: list, single, and the create/update/delete the taxonomy admin drives. |
| Types | final class | 8 +3 | The engine's registry of built-in post types, seeded from the observed |
| UrlDetails | final class | 1 +3 | A page's details as the editor's link previews read them (probe |
| UserCollectionParams | final class | 1 | The users list's parameters as the reference declares them (probe |
| UserListArgs | final class | 1 | The WP_User_Query arguments a user list request makes, as the reference |
| UserObject | final readonly class | 3 +2 | The wp/v2 user objects: the public view shape and the edit-context shape. |
| UsersController | final readonly class | 8 +8 | wp/v2 users: me, list, single, and the create/update/delete-with-reassign the Users view drives. |
| ViewConfigPatch | final class | 3 +3 | A patch to a view configuration (WP_View_Config_Data; probe |
| WidgetObject | final readonly class | 2 +1 | A widget as wp/v2/widgets shows it (probe rest-widgets): its id and base, |
| WidgetsController | final readonly class | 5 +3 | wp/v2/widgets as the reference answers it (probe rest-widgets), for |
Minn\Runtime 112
The WordPress runtime plugins load against.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| Abilities | final class | 15 +3 | The abilities registry behind WP_Abilities_Registry, |
| AbilityRun | final class | 3 | The checks of an ability's run, as the reference makes them (probes |
| AccountFlows | final class | 4 +1 | The account functions a sign-in page and plugins call, with the |
| AjaxController | final readonly class | 2 +3 | admin-ajax.php, the endpoint plugins post their front-end work to: a form |
| AllowedOptions | final class | 1 | The settings-page allowlist plugins extend: option group => the option |
| ApplicationPasswordEvents | final class | 2 +1 | Application password changes made over REST, as the reference makes them |
| ApplicationPasswordSignIn | final class | 2 +1 | wp_authenticate_application_password as the reference answers it (probe |
| ArchiveLinks | final class | 2 | A post type's archive address and its feed, as the reference gives them |
| AssetEdits | final class | 1 | What a plugin did to $wp_scripts->registered or $wp_styles->registered |
| Assets | final class | 29 +5 | The registry behind wp_register_/wp_enqueue_ for scripts and styles: |
| Avatar | final class | 6 | Avatars the way get_avatar_data and get_avatar decide them: the argument |
| BlockFilters | final class | 7 +1 | The block-level filters plugin code hooks (pre_render_block, |
| BlockHooks | final class | 4 | The Block Hooks API on the engine's own front end: a plugin asks for its |
| BlockMetadata | final class | 2 +1 | block.json to the settings a block type registers with: the property |
| BlockTemplates | final class | 5 | Block templates plugins register at runtime, by their namespaced name |
| BlockWidget | final class | 1 | A block widget's legacy class name. Every widget the block editor saves |
| BrowserGlobals | final class | 1 +1 | The browser and web server a request names, as the reference's globals |
| CommentCloser | final readonly class | 2 | The Discussion setting that closes comments on old posts. Observed on the |
| CommentEvents | final readonly class | 11 +5 | What the reference's REST comments controller tells plugins, for the |
| CommentFeedQuery | final class | 2 +2 | The comments a comments feed's main query carries, as the reference |
| CommentForm | final class | 1 +3 | The comment form's submission with plugins loaded |
| CommentPages | final class | 4 +1 | Which page of a post's comments a comment falls on, and the link that |
| CommentQuery | final readonly class | 1 | The approval breakdown wp_count_comments reports (comment lists run through WP_Comment_Query and Minn\Runtime\CommentQueryRunner). |
| CommentQueryRunner | final class | 2 +2 | WP_Comment_Query as the reference runs it (probe wp-comment-query-sql): |
| CommentQueryWhere | final class | 2 +9 | WP_Comment_Query's WHERE pieces and the posts join, in the reference's |
| CommentThreads | final class | 2 | A threaded or flat comment query's descendants as the reference fills |
| Connectors | final class | 12 +1 | The connectors registry: the external services a site talks to (AI |
| Constants | final class | 1 +1 | The constants plugin code expects: the fixed set from data/constants.json |
| CronTable | final class | 10 | The cron option's shape, operated on as data: timestamp => hook => key => |
| CurrentUser | final class | 1 | Who the request is, as the reference settles it before init: the user |
| DbDelta | final readonly class | 6 +1 | dbDelta as the reference does it: a CREATE TABLE statement creates the |
| DebugMode | final class | 5 | PHP's error settings from the debug constants, as the reference's boot |
| Deferrals | final class | 5 +1 | The switches an importer flips for the length of a request (probe |
| EarlyFilters | final class | 1 | Filters that run before the runtime exists, over the hooks added that |
| FileTypeCheck | final class | 1 +2 | A file's type from its content as much as its name, as the reference's |
| FileUpload | final class | 1 +2 | A file a plugin hands to wp_handle_upload or wp_handle_sideload, taken in |
| Heartbeat | final class | 1 | The heartbeat a signed-in page beats through admin-ajax.php, answered as |
| Hooks | final class | 23 +4 | The hook registry plugin code registers into and the engine fires. |
| Interactivity | final class | 8 +15 | Server-side directive processing for the Interactivity API: the state and |
| MenuEvents | final readonly class | 8 +2 | Menus and their items saved as the reference saves them, telling |
| MenuItemMarks | final class | 1 +7 | The classes and current flags the reference gives a menu's items for the |
| Meta | final readonly class | 17 +1 | The four meta tables behind get_metadata and friends: reads by object, and the row-level writes the update and delete rules need. |
| MetaKeys | final class | 7 +2 | The meta keys code registers, kept where the reference keeps them |
| MetaTypes | final class | 2 | Meta types a plugin brought, by the table it named on $wpdb as |
| NavMenu | final class | 1 +3 | wp_nav_menu()'s menu: the one the arguments name, its items marked for |
| NavMenuItems | final class | 2 +7 | Classic menu items as the reference serves them to walkers and plugins |
| OEmbed | final class | 6 | oEmbed as data: provider matching against the wildcard table, response parsing, and the markup an oEmbed payload becomes. |
| ObjectCache | final class | 7 | The per-request object cache behind wp_cache_*: groups of keys, nothing persistent. |
| ObjectTerms | final class | 1 | wp_get_object_terms's handling of taxonomies registered with their own |
| OptionSanitizer | final class | 1 +8 | A core option's value cleaned as the reference's sanitize_option cleans |
| Options | final class | 19 +8 | Options as plugin code sees them, kept where the reference keeps them: |
| OptionsGroup | final class | 4 | wp_cache's options group, where option reads are kept as the reference |
| Pages | final class | 5 | get_pages() as the reference shapes it: its arguments as a post query |
| Patterns | final class | 14 | The block pattern, pattern category, and block style registries as data. |
| PlaceholderTrace | final class | 2 | Records every call into a generated placeholder while a site opts in by |
| Placeholders | final class | 2 +3 | The printf placeholders plugin code hands wpdb::prepare, filled the way |
| PluginActivation | final class | 2 +1 | Switching a plugin on and off the way the reference's activate_plugin |
| PluginRemoval | final class | 2 +5 | Deleting plugins as the reference's delete_plugins does it: each in turn |
| PluginRequirements | final class | 1 +2 | Whether a plugin can be switched on here, as the reference's |
| PluginUpdates | final class | 2 +1 | The update offers the site's own plugins publish. A plugin that hosts |
| Plugins | final class | 6 +6 | Loads the site's plugins into the runtime the way the reference does: |
| PostData | final class | 2 | The loop's view of a post, as the reference's generate_postdata and |
| PostEvents | final readonly class | 13 +2 | What the reference's REST controllers tell plugins about a post they |
| PostInsert | final readonly class | 5 +1 | The decisions behind wp_insert_post: which columns a postarr fills, when |
| PostLinks | final class | 5 +3 | Post addresses as the reference's link functions build them (probe |
| PostLookup | final readonly class | 10 | The post reads plugin code asks for by shape: a page by title, revisions, counts. |
| PostQuery | final class | 3 +13 | WP_Query::get_posts as the reference runs it (probe wp-query-sql): the |
| PostQueryParts | final class | 3 | The pieces of one WP_Query run as the reference builds them and hands |
| PostQueryResults | final class | 1 +3 | What WP_Query does with its posts once it has them, as the reference does |
| PostQueryStatus | final class | 2 +5 | WP_Query's post type and status clause as the reference writes it (probe |
| PostQueryTax | final class | 3 +5 | The taxonomy side of WP_Query as the reference runs it (probe |
| PostQueryWhere | final class | 4 +6 | The WHERE fragments WP_Query writes from its variables, in the reference's |
| PostRevisions | final class | 2 +2 | A post's revisions as the reference's wp_save_post_revision keeps them |
| PostSave | final class | 9 +3 | A REST save's columns through the filters the reference's save runs |
| QueriedObject | final readonly class | 1 +1 | Which object a query is "about", read from its flags and variables: a term |
| QueryFlags | final readonly class | 3 +2 | The conditional flags a set of query variables implies (is_single, is_archive, |
| Recovery | final readonly class | 9 +6 | Recovery from a fatal in someone else's code. When a plugin or theme |
| Refusal | final readonly class | 0 | A refused operation, the way plugin code expects to read it: a code, a message, optional data. The facade turns it into WP_Error. |
| RegisteredSettings | final class | 5 | Settings as register_setting keeps them (probe rest-settings): the |
| Registry | final class | 28 +3 | Post types, taxonomies, and statuses as plugin code registers and reads |
| RewriteRules | final class | 6 +10 | The rewrite rules WordPress makes from its structures, as the reference |
| Runtime | final class | 32 +1 | The WordPress runtime the engine offers plugin code: the procedural |
| ScriptLoading | final class | 4 +3 | How a script may load, as the reference decides it (probe |
| ScriptModules | final class | 15 +8 | The script modules registry: registrations with typed dependencies, the |
| ScriptPack | final class | 5 +1 | The site-supplied script pack: the `wp-*` JavaScript packages the engine |
| Shortcodes | final class | 15 +2 | The shortcode registry plugin code fills with add_shortcode, and the |
| StoredObjects | final class | 4 +1 | The classes a stored blob may name and come back as. The serialized |
| SymbolGap | final readonly class | 7 +2 | The part of the reference's interface the runtime does not answer: names in |
| SymbolTable | final class | 7 | What a folder's PHP names, collected while its tokens are read: the |
| Symbols | final class | 5 +10 | A static read of what a plugin's PHP calls: global functions and classes |
| TagEditor | final class | 8 +3 | Edits one start tag's attributes in place the way the reference's tag |
| TermEvents | final readonly class | 5 +2 | What the reference's REST terms controller tells plugins, for the |
| TermFields | final class | 2 +2 | A term's fields in a context, as the reference's sanitize_term_field |
| TermOrder | final class | 3 | A term query's ORDER BY as the reference writes it (probe |
| TermQuery | final readonly class | 11 +7 | Term reads in the shapes plugin code asks for: get_terms() arguments to |
| TermQueryRunner | final class | 1 +12 | WP_Term_Query::get_terms as the reference runs it (probe |
| TermQueryTree | final class | 4 +1 | What a term query does with its rows, as the reference does it (probe |
| TermSave | final class | 2 +5 | wp_insert_term and wp_update_term in the reference's order (probe |
| TermWriter | final readonly class | 8 +1 | The decisions behind wp_delete_term and the object-term relationships: |
| ThemeSupports | final class | 10 +1 | What a theme supports, as add_theme_support keeps it (probe rest-themes): |
| ThemeSwitch | final class | 5 +3 | Switching the theme as the reference does it, in two halves. The switch |
| TreeWalk | final class | 5 +3 | The Walker contract's traversal: elements keyed by the walker's |
| TypeProps | final class | 2 +2 | A post type's or taxonomy's properties from the arguments it was built |
| UpdateCounts | final class | 1 | The updates waiting, as wp_get_update_data counts them for the user |
| Upgrade | final class | 7 +10 | What WP_Upgrader does with a package (probe upgrader), for the facade's |
| UserEvents | final readonly class | 4 +1 | What the reference's REST users controller tells plugins, for the |
| UserInsert | final readonly class | 3 | The decisions behind wp_insert_user: what a new account needs, which email |
| UserOrder | final class | 2 +1 | A user query's ORDER BY keys as the reference writes them (probe |
| UserQueryRoles | final class | 1 +3 | A user query's roles and capabilities as the meta clauses the reference |
| UserQueryRunner | final class | 3 +6 | WP_User_Query as the reference runs it (probe wp-user-query-sql): the |
| UserSave | final class | 3 | An account's fields through the filters the reference's wp_insert_user |
| WidgetAreas | final class | 8 +2 | The widgets helper functions as the reference answers them (probe |
Minn\Support 32
Escaping, serialized readers, small helpers.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| Accents | final class | 1 +1 | Accented and special characters to their plain spelling, from the |
| Backtrace | final class | 1 | A call stack named as wp_debug_backtrace_summary names it (probe |
| DirectoryListing | final class | 1 | Walks a directory the way the filesystem API lists it: named entries, dot entries skipped, hidden ones optional, recursion optional. |
final class | 2 | The address rules the reference applies: a local part from a fixed | |
| Entities | final class | 3 +2 | HTML special-character encoding with the reference's quote styles and its |
| Escape | final class | 2 +1 | Text made safe for HTML the way WordPress's escapers make it (esc_html, |
| FileHeaders | final class | 1 | Header values from a plugin or theme file. The labels (Plugin Name, |
| FileTree | final class | 2 | Whole-directory reads and copies. The engine's own installer, the update |
| Files | final class | 3 | Recursive filesystem work behind WP_Filesystem_Direct: best-effort tree |
| Flag | final class | 1 | A yes or no as WordPress reads one from loose input (wp_validate_boolean). |
| Hierarchy | final class | 2 +1 | Loops in a parent chain, found with two walkers: a slow one that takes one |
| Ip | final class | 1 | Addresses with their identifying tail removed, for logs and analytics that |
| Kses | final class | 17 +12 | The HTML a user without unfiltered_html may store. Tags outside the |
| KsesAttributes | final class | 3 | Kses one attribute at a time, for the shortcode pass that runs inside |
| KsesCss | final class | 2 +2 | The style attribute as kses keeps it (safecss_filter_attr): each |
| KsesEntities | final class | 2 +1 | The named references kses keeps as written: the list captured from the |
| KsesPolicy | final readonly class | 7 | What one kses pass allows: the tags, each tag's attributes (allowed |
| KsesValues | final class | 2 +1 | The value rules an allowlist attribute may carry, as the reference judges |
| Lists | final class | 8 +1 | List shaping behind the facade's array utilities: arguments over their |
| Locale | final class | 3 | The locale's calendar and number vocabulary as data: the names a site |
| Markers | final class | 2 | The BEGIN/END marker blocks insert_with_markers() maintains in files like |
| Paths | final class | 3 | File-system path and permission spellings. |
| ScriptTag | final class | 2 +1 | Script elements as the reference builds them (probe script-tags): the |
| SearchReplace | final class | 1 +1 | String replace that walks serialized-PHP arrays of scalars without |
| Serialized | final class | 8 +10 | Tolerant readers for the serialized-PHP blobs WordPress stores. Nothing |
| Slashes | final class | 2 +1 | Magic-quote slashes the way WordPress keeps them (wp_slash, wp_unslash): |
| SqlTable | final class | 2 | The table a SQL statement is about, as wpdb::get_table_from_query reports |
| Time | final class | 1 | Human-scale spans: a number of seconds as the largest whole unit it fills, rounded, never below one. |
| TimezoneChoice | final class | 1 +6 | The timezone choices a settings form offers (wp_timezone_choice, probe |
| Url | final class | 10 +1 | URL shaping the escaping and query helpers share: the character cleanup |
| Utf8 | final class | 12 | UTF-8 as the reference reads it. Well-formed means no overlong forms, |
| WebServer | final class | 1 | What the SERVER_SOFTWARE string says about the web server in front of the site. |
Minn\Theme 41
The block-theme reader, templates, global styles and the page renderer.
| Class | Kind | Methods | Summary |
|---|---|---|---|
| ArchiveTitle | final class | 2 +2 | The label and name an archive titles itself with: `Category:` around the |
| BodyClasses | final class | 2 +1 | The body-class list a classic theme's body_class() starts from, in the |
| BodyFacts | final readonly class | 0 | The facts about a page that decide the body classes a classic theme's |
| ClassicContent | final class | 1 | What a classic theme's the_content() prints: the engine's block pipeline |
| ClassicRenderer | final readonly class | 3 +4 | A whole page from the active classic theme: the reference's PHP template |
| ClassicTheme | final readonly class | 1 | The active classic (PHP-template) theme on disk. A theme is classic when |
| CustomCss | final class | 2 +2 | Custom CSS as theme.json and blocks write it (a styles node's "css", a |
| EmbedRenderer | final readonly class | 2 | A post's embed page (its /embed/ address, or ?embed= on it), the card |
| FeatureSelectors | final class | 1 | A block's styles split between the selectors its metadata gives its |
| FeedHeaders | final class | 1 +1 | The headers a feed is sent with, as the reference's send_headers sends |
| Folder | final readonly class | 5 | A theme folder read from disk: its style.css headers, which folder its templates come from, its screenshot, whether it is a block theme. |
| FontFaces | final class | 2 +5 | fonts a theme.json declares in the shape they are printed from. |
| FrontLifecycle | final class | 3 | WordPress's front-end request steps around the main query, as WP::main |
| GlobalStyles | final readonly class | 17 +8 | theme.json to CSS. Presets become custom properties on :root and their |
| HeadLinks | final readonly class | 4 | The engine's own pieces of a page's head: its block stylesheet link, |
| Hierarchy | final class | 9 | The classic template hierarchy: the candidate file names each template |
| MainQueryBridge | final readonly class | 3 +4 | Stands the main query for a themed page and runs the front-end steps |
| NotModified | final class | 0 | Raised once a reader's copy of a feed has been found current and the |
| PageRenderer | final readonly class | 4 +3 | A whole page from the active block theme: the template the resolution |
| PatternHeaders | final class | 4 | A theme's pattern files read by their headers, as WP_Theme::get_block_patterns |
| PatternText | final class | 1 +10 | Block-theme patterns are PHP files whose only code is a handful of |
| Printed | final class | 0 | Raised once a WordPress handler has printed a whole response (a sitemap, |
| QueryClasses | final readonly class | 1 +5 | The body-class tokens the main query stands for, in the reference's |
| SpacingScale | final class | 1 +2 | The spacing sizes a theme.json spacing scale makes (probe |
| StyleLayers | final class | 3 | What plugins change about the global stylesheet's layers and nodes, for |
| StylePresets | final class | 9 | The preset side of theme.json: the colour, gradient, font-size, |
| StyleSettings | final class | 3 +2 | The settings and styles nodes as wp/v2/global-styles reports them: |
| TemplateBuffer | final class | 1 | The reference includes a front-end template inside the template-enhancement |
| TemplateHierarchy | final class | 1 +4 | The templates a block theme falls back through for a template slug, as |
| TemplateIndex | final class | 13 +7 | Every block template and template part the site offers, in the order the |
| TemplatePartTheme | final readonly class | 1 +3 | A template-part block inside a template says which theme's part it means. |
| TemplatePatterns | final readonly class | 1 +4 | A template can name a pattern instead of carrying its blocks, and the |
| TemplateRecord | final readonly class | 2 | One block template or template part, whatever it came from: a theme |
| TemplateWriter | final readonly class | 4 +3 | Saving and removing block templates. A template the theme ships is never |
| Templates | final readonly class | 7 +5 | Which template renders a resolution, and where its markup comes from: |
| Theme | final class | 19 +7 | The active block theme on disk, read as data: theme.json, the templates |
| ThemeJsonData | final class | 2 +1 | The theme's theme.json as plugins and the theme's own functions may |
| ThemeStyles | final readonly class | 6 +4 | The active theme's global styles as wp/v2/global-styles/themes/{stylesheet} |
| TreeStyles | final readonly class | 15 +2 | The CSS one theme.json tree writes, as WP_Theme_JSON keeps the tree |
| Typography | final class | 3 +1 | Font sizes as the reference writes them (probe plugin-queue3): a size in |
| UserStyles | final readonly class | 6 | The site editor's saved global styles: one wp_global_styles post per |
Minn\Widgets 2
| Class | Kind | Methods | Summary |
|---|---|---|---|
| WidgetForms | final class | 14 +4 | The core widgets' settings forms, the markup a widget's form() prints and |
| WidgetTemplates | final class | 3 +3 | The Underscore templates the Text and Custom HTML widgets print for their |
Nothing matches. The facade (wp-api/) is not listed here: that is the WordPress surface, not the engine's.