创建ACF块时,需要设置渲染回调:
acf_register_block_type( array(
\'name\' => \'example-block\',
\'title\' => __( \'Example Block\', \'your-text-domain\' ),
\'description\' => __( \'A custom example block.\', \'your-text-domain\' ),
\'render_callback\' => \'my_acf_block_render_callback\',
\'category\' => \'formatting\',
\'icon\' => \'admin-comments\',
\'keywords\' => array( \'example\' ),
) );
然后在该函数中调用木材函数,就像在页面模板中调用木材函数一样:
function my_acf_block_render_callback( $block, $content = \'\', $is_preview = false ) {
$context = Timber::context();
// Store block values.
$context[\'block\'] = $block;
// Store field values.
$context[\'fields\'] = get_fields();
// Store $is_preview value.
$context[\'is_preview\'] = $is_preview;
// Render the block.
Timber::render( \'block/example-block.twig\', $context );
}
之后,当使用输出时,块将正确渲染
{{ post.content }}
或使用标准Wordpress过滤器显示的任何其他内容
the_content()
.
有关更多信息,请访问Timber\'s documentation, 这就是我得到这些片段的地方。