Skip to content

Gutenberg blocks

New in v3.1.0. A block-editor counterpart to the Elementor tools, minimal and systematic, with no per-block tools. Built on pure WordPress core (parse_blocks / serialize_blocks), so they work with no Elementor dependency and register always-on next to the WordPress Content tools. They appear under a Gutenberg tab on the Tools screen.

All ten are enabled by default (only remove-block is badged destructive).

Blocks are raw markup in, raw markup out. Existing blocks are addressed by an index path (an array like [2, 1] meaning “the second child of the third top-level block”), which you obtain from get-post-blocks. The tools parse the post’s blocks, navigate by path, mutate, and re-serialize while preserving container wrapper markup.

A typical flow: get-post-blocks to read the tree and paths → add-block / update-block / move-block to edit → re-read if you need fresh paths.

Compact index of registered block types (name, title, category). Filter by category or search.

Returns: array of { name, title, category }. Read-only.

A block’s attributes, supports, and a markup example. Pass a single name or a names[] batch.

Returns: { name, attributes, supports, example }. Read-only.

The parsed block tree for a post, with an index path per block, the addressing you pass to the edit tools.

Input: post_id.

Returns: the block tree, each node with its path, blockName, and attributes. Read-only.

Registered block patterns (name, title, categories, description).

Returns: array of patterns. Read-only.

Insert raw block markup at a position.

Input: post_id, markup, position (append / prepend / before / after / inside), and path when the position is relative to an existing block.

Replace the block at an index path with new markup.

Input: post_id, path, markup.

Delete the block at an index path. Destructive.

Input: post_id, path.

Move a block to a new position.

Input: post_id, path, target position (+ target path).

Clone the block at a path; the copy is inserted immediately after it.

Input: post_id, path.

Insert a registered pattern’s markup at a position.

Input: post_id, pattern name, position (+ path).

The WordPress Content update-post tool can rewrite a post’s entire block content in one shot. Prefer these incremental block tools when you want to change one section without touching the rest. They’re safer for edits to existing, human-authored posts, and they preserve surrounding markup. In the WordPress block editor, the AI Chat panel steers the agent toward these tools over a full rewrite.