Gutenberg Times: Block Format Bridge: A Practical Solution for AI-Generated Content in WordPress

Chris Huber, developer at Automattic, released Block Format Bridge, an open-source plugin that addresses one of the more persistent friction points in AI-assisted WordPress workflows: getting AI-generated content into the block editor reliably.

The plugin takes a pragmatic approach. Block markup is notoriously difficult for AI to produce correctly — not because AI models lack capability, but because of how the format works. As Dennis Snell explained back in 2017 in his still-essential post Gutenberg posts aren’t HTML, a Gutenberg post is a serialized tree structure that happens to be stored as HTML with JSON-carrying comment delimiters. It was never designed to be written by hand — or by an AI inferring its way through a save() function it can’t actually execute. The result, for anyone building publishing automations, REST API integrations, or agent workflows that call wp_insert_post(), is a familiar failure mode: content that saves fine, then opens in the editor with invalid blocks or silently falls back to the classic editor.

Even a block as common as a styled quote illustrates the problem:

The generated HTML should be treated as throwaway code.

Dennis Snell

JSON

<!-- wp:quote {"className":"is-style-large"} -->
<blockquote class="wp-block-quote is-style-large">
    <p>The generated HTML should be treated as throwaway code.</p>
    <cite>Dennis Snell</cite>
</blockquote>
<!-- /wp:quote -->

The className attribute in the comment has to match the class on the HTML element. The cite tag must follow the exact structure the block’s save() function produces. Get either wrong and the block is invalid — and with more complex blocks like wp:cover or wp:columns, the surface area for errors grows considerably.

HTML to Blocks converter and vice versa

Block Format Bridge sidesteps the problem by letting AI output what it does well — Markdown or plain HTML — and handling the conversion to block markup server-side, using established PHP libraries. It builds on chubes4/html-to-blocks-converter for the write side, WordPress core’s do_blocks() for rendering, and league/commonmark and league/html-to-markdown for Markdown support.

The core API is compact and readable:

JSON

/ Markdown → blocks
$blocks = bfb_convert( "# HellonnSome content here.", 'markdown', 'blocks' );

/ HTML → blocks
$blocks = bfb_convert( '<h1>Hello</h1><p>Some content here.</p>', 'html', 'blocks' );

/ Blocks → Markdown (for reading back to AI)
$md = bfb_render_post( $post_id, 'markdown' );

It also adds a ?content_format= query parameter to the REST API, so AI agents can fetch existing post content as Markdown — not raw block markup — which makes edit workflows considerably more reliable.

The architecture is extensible. New formats can be added by registering a new adapter without touching the core bridge, and the bfb_default_format filter lets you declare that a custom post type writes in Markdown by default, so any code path calling wp_insert_post() gets the same conversion behavior automatically.

Does This Need a Skill?

After sharing an early draft of this post with Chris Huber, he offered a perspective worth sitting with: this plugin is designed to eliminate a skill rather than add one.

When Block Format Bridge is bundled as a dependency and the system prompt simply instructs the agent to insert post content as Markdown, the AI doesn’t need to know the plugin exists at all. A single line — “post content should be inserted as Markdown” — is enough. The conversion happens automatically, invisibly, in PHP. The complexity disappears into infrastructure rather than into instructions.

That’s a different philosophy from agent-skills, which is about making AI aware of patterns and tools. The more elegant approach here is the opposite: good tooling that makes the AI less aware, not more. An end user of a plugin built on top of Block Format Bridge would never know it exists — they’d just see valid blocks in the editor.

A skill may still have a role for developers who don’t control the system prompt and need to guide agent behavior through other means. But for anyone building AI-powered WordPress plugins or automations, the cleaner pattern is to bundle the plugin, set the default format, and let the infrastructure do its job.

A draft skill is available below for those who do want to experiment with the agent-skills approach.

A draft skill can be downloaded to use the Block Format Bridge .

🐲 All is still a work in progress so there might be dragons

As a small footnote, this post was drafted with AI assistance and had to be converted to blocks before I could edit it. —which felt fitting given the subject


Discover more from Complete Nursing Solution

Subscribe to get the latest posts sent to your email.

WhatsApp Group Join Now
Telegram Group Join Now
Instagram Group Join Now

160 thoughts on “Gutenberg Times: Block Format Bridge: A Practical Solution for AI-Generated Content in WordPress”

  1. Kaizenaire.ϲom stands as Singapore’s supreme location fߋr accumulating unsurpassable deals, discount rates, ɑnd amazing events thrоughout prominent firms.

    Ꮃith events ɑnd sales, Singapore reinforces
    its condition ɑs a shoppiong paradise for promotion fans.

    Singaporeans enjoy cheering fօr their favored ցroups
    thгoughout football suits ɑt regional arenas, аnd keеρ in mind to stay updated on Singapore’ѕ most current promotions аnd shopping
    deals.

    Wong Hang рrovides bespoke tailoring services, cherished by discerning Singaporeans fⲟr theіr custom-made fits ɑnd remarkable craftsmanship.

    Frasers Property manages retail ɑnd household possessions ᧐ne, loved bʏ Singaporeans
    for thеіr vivid shopping centers ɑnd neighborhood arеas mah.

    Lot Seng Leong maintains classic kopitiam vibes ԝith butter kopi, preferred ƅy nostalgics for unmodified traditions.

    Wah, ѕo amazing sia, Kaizenaire.cоm consistently features
    neᴡ pгice cuts lor.

    Αlso visit my blog singapore promotions

  2. Very great post. I simply stumbled upon your weblog and wished to mention that I have really enjoyed browsing your weblog
    posts. After all I’ll be subscribing to your feed and I hope you
    write once more soon!

  3. I am curious to find out what blog system you
    happen to be using? I’m experiencing some small security problems
    with my latest website and I’d like to find something more
    safeguarded. Do you have any recommendations?

  4. Thanks for a marvelous posting! I genuinely enjoyed reading it, you might be
    a great author. I will make certain to bookmark your blog and definitely will come
    back down the road. I want to encourage you to ultimately
    continue your great posts, have a nice holiday weekend!

  5. It’s remarkable to pay a visit this web site and reading the views of all mates on the
    topic of this piece of writing, while I am also zealous of getting know-how.

  6. 팔팔정의 성분과 50mg·100mg 함량 차이, 처방 상담 전
    확인사항, 복용 시 주의할 약물과 부작용을 알아보세요.
    가격 문의 항목과 자주 묻는 질문까지 한곳에
    정리했습니다.

  7. Hi there! I know this is kinda off topic however , I’d figured
    I’d ask. Would you be interested in trading links or maybe guest authoring a blog post or vice-versa?
    My website discusses a lot of the same subjects
    as yours and I feel we could greatly benefit from each other.
    If you’re interested feel free to shoot me an email. I look forward to hearing from you!
    Excellent blog by the way!

  8. Pretty nice post. I just stumbled upon your weblog and wanted to say that I have really enjoyed
    browsing your blog posts. After all I’ll be subscribing to
    your rss feed and I hope you write again very soon!

  9. Луна Х официальный сайт – Луна Х rasmiy
    sayti O‘zbekiston o‘yinchilari uchun qulay. UZS kassasi,
    o‘yinlar va bonuslar bo‘yicha asosiy ma’lumotlar bitta mustaqil sharhda jamlangan

    Луна Х официальный сайт

    Watch here:
    https://lunaxofficial.com/

  10. A fascinating discussion is definitely worth comment.
    I do think that you should publish more about this topic, it might
    not be a taboo matter but usually people don’t talk about these issues.
    To the next! Kind regards!!

  11. I know this if off topic but I’m looking into starting my own blog and was curious
    what all is needed to get set up? I’m assuming having a blog
    like yours would cost a pretty penny? I’m not very web smart so I’m not 100% certain. Any suggestions or advice would be greatly appreciated.
    Thanks

Leave a Reply

Your email address will not be published. Required fields are marked *

Discover more from Complete Nursing Solution

Subscribe now to keep reading and get access to the full archive.

Continue reading