我在块渲染方面遇到问题。
我使用的是ACF + Timber + Gutenberg。
在localhost上创建块不是问题,一切都显示在wp-admin端和前端(在Linux,PHP 7.219,nginx上创建)
在Windows +最新的XAMPP(PHP 7.39,apache)上进行测试安装后,结果发现这些块无法渲染(在wp-admin和前端站点上都看不到它们)。
这就是为什么我将其放在Raspberri Pi(PHP 7.120,apache)上并正常启动的原因。我认为这可能是Windows和某些服务器设置的问题。但是,当安装在普通的Web服务器(Linux,PHP 7.0.33,apache)上时,也不起作用。
有人知道不渲染图块的原因是什么吗?
在以下函数中,根本不输入回调(text_block_render_callback),但是寄存器块起作用。
add_action('acf/init', 'register_block_text');
function register_block_text() {
acf_register_block(array(
'name' => 'text',
'title' => ('Tekst', 'ABC'),
'description' => ('Moduł zwykłego tekstu', 'ABC'),
'render_callback' => 'text_block_render_callback',
'category' => 'test-blocks',
'icon' => 'edit',
'keywords' => array('blog'),
'mode' => 'edit',
'enqueue_assets' => function() {
wp_enqueue_style( 'block-text', get_stylesheet_directory_uri() . '/dist/blocks/text/text.css');
}
));
}
function text_block_render_callback($block, $content = '', $is_preview = false)
{
$context = Timber::context();
$context['block'] = $block;
$context['fields'] = get_fields();
$context['is_preview'] = $is_preview;
Timber::render(TEMPLATEPATH . '/views/blocks/text/text.twig', $context);
}
工作-相同的代码
https://i.imgur.com/lPpMgsj.png(wp-admin)
https://i.imgur.com/enq6OKA.png(前端)
不工作-相同的代码
https://i.imgur.com/RoccMVk.png(wp-admin /视图)
https://i.imgur.com/qOf1had.png(wp-admin /编辑)
答案 0 :(得分:0)
我不知道你是否解决了这个问题。我使用本地,并且遇到相同的问题。
我总是这样:
Timber::render( get_stylesheet_directory() . "/views/block-editor/content-{$slug}.twig", $context );
但是在某些服务器(和本地的新版本5.x)中不起作用
我现在使用:
Timber::render( "block-editor/content-{$slug}.twig", $context );