---
title: "How-to guides"
manual: "Headless Content Blocks"
version: "main"
permalink: "https://docs.typo3.org/permalink/netzbewegung/nb-headless-content-blocks:how-to-guides@main"
source: "Howto/Index.rst"
rendered: "2026-09-22T01:35:25+00:00"
---

# How-to guides {#how-to-guides}

Step-by-step guides for common tasks around the JSON output of EXT:nb_headless_content_blocks.

-   [Define image variants](https://docs.typo3.org/permalink/netzbewegung/nb-headless-content-blocks:define-image-variants@main) — responsive thumbnails per field via `headless.yaml`, with per-site TypoScript overrides
-   [Migrate legacy thumbnails](https://docs.typo3.org/permalink/netzbewegung/nb-headless-content-blocks:migrate-legacy-thumbnails-to-headless-yaml@main) — replace the old `headless.php` thumbnail generators
-   [Post-process JSON with headless.php](https://docs.typo3.org/permalink/netzbewegung/nb-headless-content-blocks:post-process-json-with-headless-php@main)
-   [Add sub data processors](https://docs.typo3.org/permalink/netzbewegung/nb-headless-content-blocks:add-sub-data-processors@main) — menus, record lists and other TypoScript data inside a block's `data`
-   [Render containers](https://docs.typo3.org/permalink/netzbewegung/nb-headless-content-blocks:render-containers@main) — EXT:container columns via the `nb-container-json` processor
-   [Register a custom normalizer](https://docs.typo3.org/permalink/netzbewegung/nb-headless-content-blocks:register-a-custom-normalizer@main) — own value types in the JSON output
-   [Register a field value transformer](https://docs.typo3.org/permalink/netzbewegung/nb-headless-content-blocks:register-a-field-value-transformer@main) — own string field shaping (like password blanking)
-   [Modify fields with the PSR-14 event](https://docs.typo3.org/permalink/netzbewegung/nb-headless-content-blocks:modify-fields-with-the-psr-14-event@main) (deprecated — prefer normalizers/transformers)
