説明
render_block() は、ブロックの配列データから、出力されるHTMLを生成する関数です。
基本構文
render_block( array $parsed_block ): string
引数
$parsed_block:parse_blocks()で解析したブロックの配列
戻り値
HTMLの文字列。
使い方(サンプル)
$blocks = parse_blocks( $post->post_content );
foreach ( $blocks as $block ) {
echo render_block( $block );
}
注意点
- 投稿本文をブロック単位で加工するときに使います。
実務での使いどころ
parse_blocks()で分解した、ブロックを、HTMLに戻して、出力するとき。- 特定のブロックだけを、取り出して、出力するとき。
よくあるミスと対処
- 文字列を渡している。渡すのは、
parse_blocks()が返す、配列の1つ。 - 戻り値を、
echoし忘れる。この関数は、HTMLを返す。 - 入れ子のブロック(
innerBlocks)の扱いを、考えていない。
NG例
render_block( $content ); // 文字列ではなく、ブロックの配列を渡す
OK例
$blocks = parse_blocks( get_the_content() );
foreach ( $blocks as $block ) {
if ( 'core/image' === $block['blockName'] ) {
echo render_block( $block );
}
}
使い分け早見表
| 関数 | 役割 |
|---|---|
render_block() |
ブロック(配列)を、HTMLにする |
parse_blocks() |
本文を、ブロックの配列に分解する |
has_block() |
本文に、ブロックが含まれるかを確認する |
関連項目
公式リファレンス:render_block() | Function | WordPress Developer Resources

コメント